標的部位ます。https://news.163.com/special/epidemic/
タスク:流行の基本的な状況の周りにクロール日
群集のために:基本的なPythonコードを理解し、小規模なプロジェクトのトレーニング
コードは以下の通りです
爬虫類ツールは、第1のデータ処理要求と小さな専門家のパンダを導入しました
import requests
import pandas as pd
次の関数は、データのJSONを取得することです
def get_page(url):
headers={'User-Agent':'XXXXXXX'}
r=requests.get(url, headers=headers)
r.encoding = r.apparent_encoding
a=r.json()
return a
ここでは、少しは、ページのソースコードを解析する必要がある、すべての後、さて有用な情報を抽出することです
def parse_page(html):
all=[]
china = html['data']['areaTree'][0]['children']
for i in range(len(china)):
provinceName=china[i]['name']
for j in range(len(china[i]['children'])):
cityName = china[i]['children'][j]['name']
confirm = china[i]['children'][j]['today']['confirm']
dead = china[i]['children'][j]['today']['dead']
heal = china[i]['children'][j]['today']['heal']
suspect = china[i]['children'][j]['today']['suspect']
lastUpdateTime = china[i]['children'][j]['lastUpdateTime']
a = {'province':provinceName,'city':cityName,
'confirm':confirm,'dead':dead,'heal':heal,
'suspect':suspect,'lastUpdateTime':lastUpdateTime}
all.append(a)
return all
有効なデータがファイルに保存され、次の
def save_file(all):
df = pd.DataFrame(all)
order=['province','city','confirm','dead','heal','suspect','lastUpdateTime']
df = df[order]
df.to_csv('pachong.csv',index=True,header=True)
何より、それは次の機能を実行することです
url = "https://c.m.163.com/ug/api/wuhan/app/data/list-total?t=316639086783"
dataJson = get_page(url)
allData = parse_page(dataJson)
save_file(allData)
古いルールは、問題を抱えているのささやき