Python爬蟲獲取新冠肺炎資料

2021-10-19 19:37:49 字數 3042 閱讀 4551

本文描述了最基本的爬蟲使用方法。

目標**:

獲取**中外國某國家疫情感染人數。

按f12進入開發者模式,檢視目標**的資訊,以google瀏覽器為例子:

url最後類似於亂碼形式的字串為國家名轉碼以後的文字。如果需要獲取其他國家的資料,只需要將url變為

國家名稱&,

在拼接時無法使用中文,可以使用quote方法進行轉碼。

from urllib import parse # urllib為python中用於處理http請求,parse子模組用於處理url

url =

"%s&"

#基本格式

country =

input

("請輸入查詢國家:"

)print

(url%

(parse.quote(country)))

# 使用unquote方法解析url

輸入目標國家後即可進行轉碼:

requests模組是python中的http請求庫,需要進行安裝。

瀏覽器在傳送請求時會攜帶一些資訊,為了達到模擬瀏覽器的目的,爬蟲也需要加入這些資訊進行偽裝,可以直接將瀏覽器中對應資訊直接貼上過來。

在這裡插入**片

request的使用格式:

requests.post(url,

[data,

][headers,

][proxies,

]*args)

-url:伺服器對應的位址。

-data:請求時攜帶的資料。

-headers:http請求中headers欄位。

-proxies:設定**ip位址

獲取資料的程式如下:

from urllib import parse # urllib為python中用於處理http請求,parse子模組用於處理url

import requests

defget_response

(country)

: url =

""#基本格式

headers =

url = url%

(parse.quote(country)

) data =

response = requests.post(url,data=data,headers=headers)

print

(url)

return response

# 檢視獲取的內容

country =

input

("請輸入查詢國家:"

)res = get_response(country)

print

(res.text)

# resposne.text 檢視響應中的文字資訊

資料本身並不直觀,需要進行處理。資料時字串形式的字典(json), 將其轉化為字典,然後使用pandas進行處理,最後儲存至excel檔案中。

最後的完整**如下:

from urllib import parse # urllib為python中用於處理http請求,parse子模組用於處理url

import requests

defget_response

(country)

: url =

""#基本格式

headers =

url = url%

(parse.quote(country)

) data =

response = requests.post(url,data=data,headers=headers)

print

(url)

return response

# 檢視獲取的內容

country =

input

("請輸入查詢國家:"

)res = get_response(country)

#print(res.text) # resposne.text 檢視響應中的文字資訊

with

open

("yiqing.txt"

,"a"

)as f:

f.write(res.text)

data = res.text

data =

eval

(data)

# 轉為字典

# 資料中只有data對應的鍵值對為資料

data = data[

"data"

]# 匯入pandas ,需要進行安裝

import pandas as pd # 使用as給包起別名

df = pd.dataframe(data)

# dataframe為pandas中的乙個資料結構,類似於二維**

df.to_excel(

"yiqing.xls"

, index=

false

)# to_csv可以寫入到csv檔案中

df = pd.read_excel(

"yiqing.xls"

, index_col=

none

)df

執行演示:

國內外新冠肺炎實時資料爬蟲

本文獲取的是歷史資料和當日詳細資料,返回的資料型別是json資料,其中的provincecompare欄位是各省的總體情況,如果想做國外爬蟲可沒問題,可以參看我提供的url 注意,中國當天的資料在chinadaylist欄位的最後 import pymysql import time import ...

關於新冠肺炎的一切

目錄 part 1 感染 part 2 傳播 part 3 口罩 part 4 勇氣 和你一樣,我們也一直著關注這場突然爆發的新型冠狀病毒肺炎。在下面的文章中,我們會解釋這一切是如何發生 傳播和感染的。來吧。首先我們要知道,病毒是如何感染患者的。病毒要進入細胞,細胞上就必須要有它對應的受體 rece...

新冠肺炎疫情大資料實時平台

目錄 一 簡介 本開源程式將逐步停止維護,將開設新的專案,資料來源以中國cdc為準。新增全球疫情資料 國內資料 各省市自治區資料 二 目錄結構介紹 bin 專案的底層核心,路由配置檔案 controller 控制器目錄 node modules 專案中依賴的包 public 公共資源放的目錄 rou...