两个吃奶一个添下面视频_人妻第一页香蕉网_欧美xxxx少妇_妺妺窝人体色www婷婷

問題:獲取蘇州8-15天的天氣信息,包含: 日期、天氣、溫度、風(fēng)力等信息,然后將數(shù)據(jù)存入一個文檔中,網(wǎng)址為:http://www.weather.com.cn/weather/101190401.shtml。

1. 問題分析

首先我們進(jìn)入天氣網(wǎng),然后開始對頁面進(jìn)行分析。右鍵頁面檢查網(wǎng)頁源代碼或者F12或者Ctrl+Shift+F等進(jìn)入當(dāng)前頁面,有html學(xué)習(xí)基礎(chǔ)的可以直接在網(wǎng)頁源碼中找相應(yīng)的信息標(biāo)簽,當(dāng)然也可以直接點擊左上方的按鈕,開啟快速查找,開啟后可以點擊網(wǎng)頁中的信息及可迅速定位到該信息的網(wǎng)頁源碼。

 python爬蟲15

解析方式:我們通過BeautifulSoup中的方法來鎖定信息,先找到對應(yīng)的id和class,然后再找到‘ul’中‘class’為‘t clearfix’,然后找到所有的‘li’標(biāo)簽。

weathers = soup.find(id="7d",class_="c7d").find('ul',class_="t clearfix").find_all('li')

     python爬蟲16

res = requests.get('http://www.weather.com.cn/weather15d/101190401.shtml')
res.encoding = 'utf-8'
html =res.text
soup = BeautifulSoup(html,'html.parser')
weathers = soup.find(id="7d",class_="c7d").find('ul',class_="t clearfix").find_all('li')

當(dāng)前的weathers鎖定了weather區(qū)域,我們再通過BeatifulSoup來進(jìn)行數(shù)據(jù)的解析,我們把weathers中的日期、天氣、溫度、風(fēng)力的信息通過class名字獲取到。

python爬蟲17

for weather in weathers:
    weather_date = weather.find('span',class_="time")
    weather_wea = weather.find('span',class_="wea")
    weather_tem = weather.find('span',class_="tem")
    weather_wind = weather.find('span',class_="wind")
    weather_wind1 = weather.find('span',class_="wind1")
    result = '日期:'+weather_date.text,'天氣:'+weather_wea.text,'溫度:'+weather_tem.text,
    '風(fēng)力:'+weather_wind.text+weather_wind1.text
    print(result)
    print(result,file=mylog)

采用遍歷的方式每次獲取一個標(biāo)簽,最后輸出相應(yīng)的內(nèi)容,然后存放在文檔中。

2. 完整代碼

import requests
from bs4 import BeautifulSoup
qy = open('C:/Users/輕煙/Desktop/db.txt',mode='a',encoding='utf-8')
res = requests.get('http://www.weather.com.cn/weather15d/101190401.shtml')
res.encoding = 'utf-8'
html = res.text
soup = BeautifulSoup(html,'html.parser')#解析文檔
weathers = soup.find(id="15d",class_="c15d").find('ul',class_="t clearfix").find_all('li')
for weather in weathers:
    weather_date = weather.find('span',class_="time")
    weather_wea = weather.find('span',class_="wea")
    weather_tem = weather.find('span',class_="tem")
    weather_wind = weather.find('span',class_="wind")
    weather_wind1 = weather.find('span',class_="wind1")
    result = '日期:'+weather_date.text,'天氣:'+weather_wea.text,'溫度:'+weather_tem.text,'風(fēng)力:'+weather_wind.text+weather_wind1.text
    print(result)#輸出
    print(result,file = qy)#保存到文檔中

3. 爬取結(jié)果

控制臺:

('日期:周五(28日)', '天氣:雨', '溫度:12℃/6℃', '風(fēng)力:東風(fēng)轉(zhuǎn)北風(fēng)3-4級')
('日期:周六(29日)', '天氣:陰', '溫度:11℃/3℃', '風(fēng)力:北風(fēng)轉(zhuǎn)東風(fēng)<3級')
('日期:周日(1日)', '天氣:陰轉(zhuǎn)多云', '溫度:12℃/5℃', '風(fēng)力:東南風(fēng)轉(zhuǎn)東北風(fēng)<3級')
('日期:周一(2日)', '天氣:雨', '溫度:12℃/5℃', '風(fēng)力:北風(fēng)<3級')
('日期:周二(3日)', '天氣:晴轉(zhuǎn)多云', '溫度:9℃/3℃', '風(fēng)力:北風(fēng)3-4級轉(zhuǎn)<3級')
('日期:周三(4日)', '天氣:晴', '溫度:9℃/1℃', '風(fēng)力:北風(fēng)<3級')
('日期:周四(5日)', '天氣:晴轉(zhuǎn)多云', '溫度:8℃/2℃', '風(fēng)力:東北風(fēng)轉(zhuǎn)東南風(fēng)<3級')
('日期:周五(6日)', '天氣:晴', '溫度:11℃/5℃', '風(fēng)力:東風(fēng)<3級')

文檔中:

         python爬蟲18


點贊(2)

C語言網(wǎng)提供由在職研發(fā)工程師或ACM藍(lán)橋杯競賽優(yōu)秀選手錄制的視頻教程,并配有習(xí)題和答疑,點擊了解:

一點編程也不會寫的:零基礎(chǔ)C語言學(xué)練課程

解決困擾你多年的C語言疑難雜癥特性的C語言進(jìn)階課程

從零到寫出一個爬蟲的Python編程課程

只會語法寫不出代碼?手把手帶你寫100個編程真題的編程百練課程

信息學(xué)奧賽或C++選手的 必學(xué)C++課程

藍(lán)橋杯ACM、信息學(xué)奧賽的必學(xué)課程:算法競賽課入門課程

手把手講解近五年真題的藍(lán)橋杯輔導(dǎo)課程

Dotcpp在線編譯      (登錄可減少運行等待時間)