request
urllib
獲取url
獲取狀態碼
request.states_code
response.getcode()
返回html
request.text
response.read()
獲得頭部資訊
request.headers
response.info()
返回請求的url
request.url
response.geturl()
request庫的7個主要方法
方法說明
requests.request()
構造乙個請求,支撐以下各方法的基礎方法
requests.get()
獲取html網頁的主要方法,對應於http的get
requests.post()
向html網頁提交post請求的方法,對應於http的post
requests.head()
獲取html網頁頭資訊的方法,對應於http的head
requests.put()
向html網頁提交put請求的方法,對應於http的put
requests.patch()
向html網頁提交區域性修改請求,對應於http的patch
requests.delete()
向html頁面提交刪除請求,對應於http的delete
r = requests.get(url,params=none,**kwargs)
~url :模擬獲取頁面的url連線
~params :url中的額外引數,字典或位元組流格式
~**kwargs :12個控制訪問的引數
response物件屬性
屬性
說明r.status_code
http請求的返回狀態,200表示連線成功,404表示失敗
r.text
http響應內容的字串形式,即,url對應的頁面內容
r.encoding
從http header中猜測的響應內容編碼方式
從內容中分析出的響應內容編碼方式(備選編碼方式)
r.content
http響應內容的二進位制形式
requests庫異常
異常說明
requests.connectionerror
網路連線錯誤異常,如dns查詢失敗、拒絕連線等
http錯誤異常
requests.urlrequired
url缺失異常
requests.toomanyredirects
超過最大重定向次數,產生重定向異常
requests.connecttimeout
連線遠端伺服器超時異常
requests.timeout
請求url超時,產生超時異常
爬取網頁的通用**框架
import requests
def gethtmltext(url):
try:
r = requests.get(url, timeout=30)
r.raise_for_status() # 如果狀態不是200, 引發httperror異常
return r.text
except:
return "產生異常"
if __name__=="__main__":
url = ""
print(gethtmltext(url))
Request庫介面測試基本用法
requests庫內置了不同的方法來傳送不同型別的http請求,用法如下所示 import requests base url get請求方式 r requests.get base url get 傳送post型別請求 r requests.post base url post 傳送put型別請求...
Request庫基本使用
基本例項 import requests url response requests.get url print type response print response.status code 狀態碼print type response.text print response.text 開啟網頁...
request高階用法
基本例項1 import requests response requests.get verify false print response.status code 描述 verify false,忽略證書認證 基本例項2 import logging import requests loggin...