הפשטות ויכולת ההסתגלות של פייתון עזרו לו לצבור פופולריות לאורך השנים. אתה יכול בקלות לאחזר נתונים שימושיים דרך האינטרנט עם Python. לאחר מכן תוכל להשתמש בנתונים האלה כדי להניע יישום מעשי.
למד כיצד למצוא נתוני מזג אוויר בזמן אמת באמצעות גירוד אינטרנט וממשקי API. אתה יכול להשתמש בנתונים שנאספו כדי לפתח יישום מזג אוויר פשוט.
קבל פרטי מזג אוויר עדכניים של עיר באמצעות גירוד אינטרנט
גירוד אינטרנט הוא תהליך של חילוץ נתונים ותוכן מאתר אינטרנט. שליפת נתונים אוטונומית מהאינטרנט פותחת הרבה מקרי שימוש. אבל רוב הנתונים האלה הם בפורמט HTML, אותו אתה צריך לנתח ולבדוק כדי לחלץ נתונים רלוונטיים.
אתה יכול לחלץ נתוני מזג אוויר חיים של כל עיר באמצעות גירוד אינטרנט. ספריית BeautifulSoup של Python היא הספרייה הרצויה כדי לשלוף נתונים מקובצי HTML ו-XML. עליך להתקין את ספריית BeautifulSoup Python באמצעות pip כדי להתחיל בתהליך הגרידה. הפעל את הפקודה הבאה בטרמינל כדי להתקין את ספריות BeautifulSoup ובקשות:
צִפצוּף להתקין בקשות יפהפה4
לאחר שהתקנת את הספריות הנדרשות, התחל בייבואן בקוד שלך:
הקוד המשמש בפרויקט זה זמין ב-a מאגר GitHub והוא בחינם עבורך לשימוש תחת רישיון MIT.
מ bs4 יְבוּא מרק יפה
יְבוּא בקשות
לאחר מכן, עליך לספק את פרטי הכותרת כדי שהלקוח והשרת יוכלו להעביר מידע נוסף עם בקשת HTTP או תגובה:
כותרות = {
'סוכן משתמש': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, כמו Gecko) Chrome/58.0.3029.110 Safari/537.3'
}
צור פונקציה, find_weather(), כדי לבצע שאילתה ל-Google באמצעות ה requests.get() שיטה. תשתמש בכתובת אתר לחיפוש כדי לקבל את מזג האוויר של עיר, ולאחר מכן תגרד את הנתונים המשמעותיים כדי לקבל מיקום, טמפרטורה, שעה ותיאור מזג האוויר. לאחר מכן, השתמש ב- BeautifulSoup כדי לנתח את תגובת ה-HTML שהתקבלה:
defמצא_מזג אוויר(שם העיר):
city_name = city_name.replace("", "+")לְנַסוֹת:
res = requests.get(
ו'https://www.google.com/search? q={city_name}&oq={city_name}&aqs=chrome.0.35i39l2j0l4j46j69i60.6128j1j7&sourceid=chrome&כלומר=UTF-8', headers=headers)הדפס("טוען...")
מרק = מרק יפה (res.text, 'html.parser')
מיקום = soup.select('#wob_loc')[0].getText().strip()
זמן = soup.select('#wob_dts')[0].getText().strip()
info = soup.select('#wob_dc')[0].getText().strip()
טמפרטורה = soup.select('#wob_tm')[0].getText().strip()
הדפס("מקום: " + מיקום)
הדפס("טֶמפֶּרָטוּרָה: " + טמפרטורה + "°ג")
הדפס("זְמַן: " + זמן)
הדפס("תיאור מזג האוויר: " + מידע)
מלבד:
הדפס("נא להזין שם עיר חוקי")
כדי לחלץ את מזהי האלמנטים, בצע חיפוש בגוגל ובדוק את הדף בדפדפן שלך באמצעות כלי אינטרנט. עליך לבדוק את האלמנט כדי למצוא את המזהים של רכיב ה-HTML שעבורו ברצונך לחלץ נתונים:
לאחר מכן, העבר את המזהים האלה ל- בחר() שיטה. שיטה זו מפעילה בורר CSS כנגד המסמך המנתח ומחזירה את כל האלמנטים התואמים. ה getText() השיטה מחלצת את הטקסט מאלמנט ה-HTML. ה לְהִתְפַּשֵׁט() השיטה מסירה כל תווים מובילים ונגררים מהטקסט. לאחר שחילצת ערך נקי, תוכל לאחסן אותו במשתנה.
לבסוף, בקש מהמשתמש להזין עיר ולהעביר אותה ל מצא_מזג אוויר פוּנקצִיָה:
city_name = input("הזן שם עיר: ")
city_name = city_name + " מזג אוויר"
find_weather (שם_עיר)
כעת, כאשר תפעיל את הקוד, הוא יבקש ממך להזין שם עיר. עליך להזין שם עיר חוקי כדי לקבל את התוצאות, אחרת הקוד יגרום לחריגה.
קבל פרטי מזג אוויר עדכניים של עיר באמצעות OpenWeatherMap API
OpenWeatherMap הוא שירות מקוון, בבעלות OpenWeather Ltd. ה-API שלו מספק נתוני מזג אוויר גלובליים כולל מזג אוויר נוכחי, תחזיות ונתוני עבר עבור כל מיקום. הרובד החינמי של OpenWeatherMap API מספק נתוני מזג אוויר עדכניים עם הגבלה של 60 שיחות לדקה. עליך ליצור חשבון ב-OpenWeatherMap כדי לקבל מפתח API משלך.
אל תדחף את הקוד עם מפתח ה-API למאגר ציבורי מכיוון שכל מי שיש לו גישה לקבצי המקור שלך יכול לראות ולגנוב את המפתח שלך. באפליקציית ייצור, שקול העברת נתוני מפתח ה-API לקובץ .env לאבטחה משופרת.
לך ל OpenWeatherMap's אתר אינטרנט וליצור חשבון בחינם. לאחר יצירת החשבון, תוכל למצוא את מפתחות ה-API שלך ב- מפתחות ה-API שלי עמוד. אתה יכול להשתמש במפתח ה-API המוגדר כברירת מחדל שסופק על ידי OpenWeatherMap או ליצור אחד משלך. OpenWeatherMap מספקת תמיכה ליצור כמה מפתחות API לפי הצורך עבור הפרויקטים שלך.
כעת, אתה מוכן לאחזר את נתוני מזג האוויר החיים.
# ייבוא ספריות
יְבוּא בקשות
יְבוּא json# הזן את מפתח ה-API של OpenWeatherMap כאן
# אל תדחוף אותו למאגר ציבורי
API_Key = "המפתח שלך_API"# ספק שם עיר חוקי
city_name = input("הזן שם עיר: ")# בניית נתיב כתובת ה-API
url = f"http://api.openweathermap.org/data/2.5/weather? q={city_name}&appid={API_Key}"# ביצוע בקשת קבל ל-API
תגובה = requests.get (כתובת אתר)# המרת תגובת JSON למילון
res = response.json()# בטל את ההערה בשורה הבאה כדי לראות הכל
# נתונים שנשלפו מה-API
# הדפסה (מיל)# בודקים אם העיר נמצאה
# אם הערך של "קוד" אינו 404,
# זה אומר שהעיר נמצאה
אם מנוח["בַּקָלָה"] != "404":
נתונים = res["רָאשִׁי"]# אחסון נתוני הטמפרטורה החיים
live_temperatur = נתונים["טמפ'"]# אחסון נתוני הלחץ החי
live_pressure = נתונים["לַחַץ"]
desc = res["מזג אוויר"]# אחסון תיאור מזג האוויר
weather_description = תיאור[0]["תיאור"]
הדפס("טמפרטורה (בסולם קלווין): " + str (חי_טמפרטורה))
הדפס("לַחַץ: " + str (חי_לחץ))
הדפס("תיאור: " + str (תיאור_מזג אוויר))
אַחֵר:
# אם העיר לא תימצא,
# גוש קוד זה יבוצע
הדפס("נא להזין שם עיר חוקי")
אם תספק מפתח API חוקי ותזין את שם העיר הנכון, תקבל את הנתונים מה-API בפורמט JSON. לאחר מכן, עליך להמיר את הנתונים בפורמט JSON זה לאובייקט Python באמצעות ה json() שיטה לביצוע פעולות נוספות. אם העיר תימצא, תצטרך לפתור את אובייקט ה-dict (מילואים) כדי לחלץ את המידע הנדרש.
פתח יישום מזג אוויר באמצעות נתוני מזג אוויר חיים
כעת, לאחר שלמדת כיצד להביא נתונים חיים באמצעות OpenWeatherMap API, אתה מוכן לפתח יישום מזג אוויר פשוט באמצעותו. בניית אפליקציית מזג אוויר יכולה לעזור לך ליישם את מה שאתה יודע ולחדד את כישורי הפייתון שלך.
ללכלך את הידיים על פרויקטים מעשיים יכול להפוך אותך למפתח טוב יותר. אתה יכול לפתח כמה פרויקטים אחרים של Python כמו מערכת התחברות, אפליקציית חידון או מקצר כתובות אתרים כדי לבסס את כישורי הפיתוח שלך ב-Python.