使用Python去爬取中國天氣網的近7天天氣情況

2021-08-22 10:19:19 字數 1391 閱讀 9371

import requests

from bs4 import beautifulsoup

address = ''

for i in range(1,24):

z = ''

if i<5:

z = '0'+str(i)+'0100'

if i>4 and i<10:

z = '0'+str(i)+'0101'

if i>9:

z = str(i)+'0101'

address1 =address.format(z)

#print(address1)

w = requests.get(''+address1+'')

#轉換編碼解決中文問題

t1 = w.text.encode('iso-8859-1').decode('utf-8')

ht1 = beautifulsoup(t1,'html5lib')

body1 = ht1.body # 獲取body部分

# print(body1)

data = body1.find('div', ) # 找到id為7d的div

ul = data.find('ul') # 獲取ul部分

li = ul.find_all('li') # 獲取所有的li

s = body1.find('div',) #找到class為crumbs的div

a = s.find_all('a') # 獲取a標籤

#print(s)

if len(a) == 1:

print(a[0].text)

else:

print(a[0].text,'-',a[1].text,end='\n')

#print(li)

list =

for day in li: # 對每個li標籤中的內容進行遍歷

# temp代存每日的資料

temp =

# 新增日期

data = day.find('h1').string # 找到日期

inf = day.find_all('p') # 找到li中的所有p標籤

# 新增天氣狀況

# 新增溫度

tem = day.find('i').string # 找到溫度

inf = day.find_all('i') # 找到li中的所有p標籤

for j in range(len(list)):

print(list[j],end='\n')

輸出結果:

爬取中國天氣

import requests from bs4 import beautifulsoup def parser page url headers response requests.get url,headers headers text response.content.decode utf 8...

Python爬取中國天氣網天氣資料

由於一些需要,想要獲取今天的天氣資料,於是又撿起了python寫了個爬蟲用來獲取中國天氣網上的氣象資料。由於我需要的資料比較簡單,因為我只需要北京地區當天的溫度 最低溫度和最高溫度 和天氣,因此 部分比較簡單,下面就來講講這個爬取的過程。第一步 網頁分析 要進行爬蟲設計,首先得分析網頁的請求過程。首...

Python爬取中國天氣網指定城市天氣

功能 完整 import pandas as pd import requests import re 建立乙個字典儲存中國天氣網城市 def createcitycode fh r text 中國天氣網城市 csv data pd.read csv fh,engine python data da...