浙江11选5推荐号:自學Python編程【第四十一節】查天氣(1)

浙江11选5任3遗漏 www.ehxis.com 歡迎你來到馬哥自學浙江11选5任3遗漏第四十一節,我們今天也是開始一個新的內容——查天氣,當然今天不是直接告訴你怎么查天氣,而是跟你簡單說說,天氣怎么查詢,然后大家試著自己是否可以完成這個代碼,挑戰一下吧:

自學Python編程【第四十一節】查天氣(1)

給大家看一個程序:

自學Python編程【第四十一節】查天氣(1)

你輸入一個城市的名稱,就會告訴你這個城市現在的天氣情況。接下來的幾節課,我就說一下怎么實現這樣一個小程序。

之所以能知道一個城市的天氣,是因為用了中國天氣網(www.weather.com.cn)提供的天氣查詢接口。在瀏覽器里試著訪問一下:

//www.weather.com.cn/data/cityinfo/101010100.html

你就能看到北京現在的天氣。這段看上去有點像python中字典類的文字是一種稱作json格式的數據。

而我們的程序要做的事情,就是按照用戶輸入的城市名稱,去天氣網的接口請求對應的天氣信息,再把結果展示給用戶。

于是,在這個程序中,我們要用到兩個新??椋?/p>

1. urllib2

用來發送網絡請求,獲取數據

2. json

用來解析獲得的數據

聽上去似乎還挺不算太復雜?但是注意剛才那個例子,我們請求北京天氣時,用了“101010100”這樣的數字。這是天氣網設定的城市代碼。然而令人蛋疼的是,天氣網并沒有直接給出所有城市代碼的對應關系,而是給了3個接口:

1. //m.weather.com.cn/data5/city.xml

獲取所有省/直轄市的編號,如“01|北京,02|上海,03|天津”

2. //m.weather.com.cn/data5/city省編號.xml

獲取二級地區編號,如江蘇是:city19.xml

3. //m.weather.com.cn/data5/city二級編號.xml

獲取三級編號,如南京是:city1901.xml

得到最終的三級編號之后,再加上中國101的前綴,就得到了城市代碼,如南京市區就是“101190101”

所以,你可以選擇,再寫一個python程序,事先把這些復雜的編碼全部抓取下來,整理成你要的格式;或者,偷懶一下,跳過這個過程,直接拿我抓好的編碼。我放在了網盤里:

//pan.baidu.com/share/link?shareid=1471212773&uk=204484850

今天先賣個關子,不說具體的寫法。想挑戰的同學可以試試再我說之前就把這個程序搞定。

恭喜您在Python自學的道路上又堅持了一天,大家想想我們之前講過的循環、文件存取、修改等,是不是可以試著寫寫呢?試著挑戰一下自己,我在這里期待著大家的好成績,不會也沒有關系,下一節我們一點點像大家揭秘。

好啦,今天的分享到這里就結束了,希望大家能夠持續關注浙江11选5任3遗漏官網,每天都會有大量優質內容與大家分享!免責聲明:內容和圖片源自網絡,版權歸原作者所有,如有侵犯您的原創版權請告知,我們將盡快刪除相關內容。

相關新聞

聯系我們

400-080-6560

在線咨詢:點擊這里給我發消息

郵件:[email protected]

工作時間:周一至周日,09:00-18:30

QR code