資料探勘 Requests模組

2021-08-25 14:18:39 字數 1925 閱讀 4646

發現學習python的小夥伴都是從「爬蟲」入坑的,這裡就分享一篇爬蟲技術常用的requests庫的文章。來自requests庫的發明者kenneth reitz。

曾幾何時,製作網路爬蟲需要先導入「urllib」庫,然後再進行各種套用,繁瑣而複雜。現在介紹神奇的"requests"庫,用大神matt deboard的話說就是:「i』m going to get kenneth reitz』s python requests module tattooed on my body, somehow. the whole thing.」

# -*- coding: utf-8 -*-

#requests模組使用介紹

#第一部分:發出請求

import requests

r = requests.get('') #使用requests模組的get函式獲取**,返回乙個response物件

#各種不同的http請求格式

r = requests.get('url') #get請求

r = requests.post('url', data = ) #post請求

r = requests.delete('url') #delete請求

r= requests.head('url') #head請求

r = requests.options('url') #options請求

#第二部分:在url中傳遞引數

payload =

r = requests.get('', params=payload) #使用params關鍵字引數將這些引數作為字典值提供

print(r.url) #列印已編碼好的url

#第三部分:響應內容

r.encoding #檢視返回的請求物件的編碼,也可以修改編碼形式

r.text #文字編碼

r.content #為了方便html和xml可以在編碼中查詢制定內容,使用-content檢視編碼

#第四部分:二進位制響應內容

r.content #對於非文字請求,以位元組為單位響應正文

from pil import image

from io import bytesio

i = image.open(bytesio(r.content)) #從請求返回的二進位制資料建立映像

#第五部分:json響應內容

r = requests.get('url')

r.json() #處理json資料

r.raise_for_status 或者 r.status_code #用來檢查是否響應成功

#第六部分:響應原始內容

r = requests.get('url', stream = true)

r.raw

r.raw.read(10)

#自定義標題

r = requests.get(url, headers = headers) #指定的headers=設定將覆蓋原設定

r.headers #檢視伺服器的響應頭

r.headers['content-type'] #訪問特定頭資訊

#cookie相關

r.cookies['example_cookie_name'] #訪問響應的cookie

cookies = dict(cookie_are='working')

r = requests.get(url, cookies=cookies) #將自己的cookie傳送到伺服器

#第七部分:其他內容

r = request.head('url', allow_redirects=true) #允許重定義

r = request.get('url', timeout=0.001) #超時設定

資料探勘 requests庫

import requests r requests.get print r 返回text型別資料 print r.text 返回二進位制型別資料 print r.content import random import requests headers應該是乙個字典,通常用於欺騙 useragen...

requests模組入門

requests庫是比urllib更加方便實用的http第三方庫,它支援http連線保持和連線池,支援使用cookie保持會話,支援檔案上傳,支援自動響應內容的編碼,支援國際化的url和post資料自動編碼。requests.request 構造乙個方法,它是支撐以下各方法的基礎方法。request...

使用requests模組簡單獲取資料

1 1 2 url 3 2.4 response requests.get url url 5 3.6 page text response.text7 4.8 with open sogou.html w encoding utf 8 as fp 9 fp.write page text 1 im...