為了使用python學習爬取疫情資料,提前學習了python中的語法和各種儲存結構(dirt),若沒有這些基礎很難看懂python**,更別提寫了
# 放入要爬的url
url = ""
# 設定header做乙個防爬機制
# 獲取response的json
response = requests.get(url, headers=header)
# 取得資料詞典
data = json.loads(response.content.decode())
data_str = data['data']
data_json = json.loads(data_str)
# 取出各個省和市的dict
areatree = data_json['areatree'][0]['children']
# 連線資料庫
db = pymysql.connect(host = 'localhost', port=3306, user='root', password='abc456', db='yiqing', charset='utf8')
#使用cursor方法生成乙個游標
cursor = db.cursor()
# 更新時間
lastupdatetime = data_json['lastupdatetime']
for province_list in areatree:
province_name = province_list['name']
confirm_total = province_list['total']['confirm']
suspect_total = province_list['total']['suspect']
dead_total = province_list['total']['dead']
heal_total = province_list['total']['heal']
for itemchild in province_list['children']:
city_name = itemchild['name']
confirm = itemchild['total']['confirm']
suspect = itemchild['total']['suspect']
dead = itemchild['total']['dead']
heal = itemchild['total']['heal']
# 插入資料
sql = "insert into pythontest2_copy1(id, province_name, city_name, confirm, suspect, dead, heal,lastupdatetime) values ({},'{}','{}','{}','{}','{}','{}','{}')".format(0, province_name, city_name, confirm, suspect, dead, heal,lastupdatetime)
cursor.execute(sql)
sql_total = "insert into pythontest2_copy1(id, province_name, city_name, confirm, suspect, dead, heal,lastupdatetime) values ({},'{}',{},'{}','{}','{}','{}','{}')".format(
0, province_name, 0, confirm_total, suspect_total, dead_total, heal_total, lastupdatetime)
cursor.execute(sql_total)
db.commit()
日期
開始時間
結束時間
中斷時間
淨時間活動
備註3.11
16:00
16:50
2030
編碼前準備
3.11
21:00
21:30
30編寫**
3.11
21:30
21:45
15測試
3.11
21:45
21:505整理
日期編號
型別引入階段
排除階段
修復時間
修復缺陷
描述3.1111
編碼編碼
1min
規範縮排
縮排不夠規範,出現錯誤
3.1122
編碼測試
2min
修改sql語句位置
資料庫儲存的資料與預期的不一致
3.1133
編碼測試
1min
刪掉多餘的","
sql語句書寫不規範,無法插入資料庫
3.1144
編碼測試
3min
將string再轉成python物件型別
沒有正確提取資料
可以很明顯的看到用python編寫爬蟲的簡單和簡便,不得不感嘆各個語言的特性。這裡的大部分時間都用在看別人的**上了,但最後收穫也很大。
ps:python的縮排規範確實難頂啊
Python爬取疫情資料
實現 輸出結果 import requests 請求庫 import pandas as pd 日期 today time.strftime y m d time.localtime format y 年 m 月 d 日 url 請求頭 headers 傳送請求 response requests....
python 爬取疫情資料並進行視覺化
課題 爬取疫情資料 進行視覺化 第一步 爬蟲爬取疫情資料 第二步 實現資料的視覺化 import time import json import requests import pandas as pd url r int time.time 1000 html requests.get url h...
搜狗 疫情資料爬取(Python)
上週已經分享過搜狗 疫情資料爬取 r語言 這次分享一下搜狗 疫情資料爬取 python from urllib import request from lxml import etree import re import pandas as pd import json url response r...