requests作爲爬蟲入門庫,我在學習過程中感覺操作比較簡單
本文將從下面幾個方面來介紹其常見功能
1.如何使用兩種請求get和post(其他請求不做說明)
2.如何僞裝自身
3.如何對返回信息進行處理
- 首先,使用前需要導入庫
import requests
- get和post請求的使用
URL = 'https://www.baidu.com/'
rGet = requests.get(URL)
rPost = requests.post(URL, data={'wd': '多人運動'})
那麼如何判斷是否請求成功呢?
print(rGet.status_code)
print(rPost.status_code)
看下圖,當status_code=200的時候,就說明請求成功
如果要進行多參數的請求
keywords = {'key1': 'value1', 'key2': 'value2'}
r = requests.get(URL, params = keywords)
- 如何僞裝自身(只說明頭僞裝,還有IP池等防禁IP的方法)
搜索界面摁F12,點擊Network,下面就會有Request Headers,點開
看到下面紅框的東西了嗎,這個就是你瀏覽器在訪問這個頁面的時候,告訴服務器:“我是誰”
接下來我們就在代碼中告訴瀏覽器“我是誰”
這裏只更改了一個參數,User-Agent
header = {
'User-Agent':
'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/81.0.4044.129 Safari/537.36'
}
rGet = requests.get(URL, headers=header)
如果不僞裝,那麼你的頭可能是這樣的
服務器一看就知道你是偷渡客
- 最後當請求成功之後,就是返回信息的處理
輸出返回信息的文本,要先進行編碼轉換,當然如果本身就是utf-8,那麼中文就不會亂碼
這裏本身就是utf-8,只是爲了說明操作方式
rGet.encoding='utf-8'
print(rGet.text)
最後,text有了,獲取關鍵信息的方式最粗暴的方式就是正則表達式篩選,
但很不爽,對,就是不爽,之後我將介紹對text進行處理的python庫BeautifuSoup庫的使用
本文皆是在作者學習中所獲,有錯誤歡迎斧正。