**
- 1、Response對象的屬性
**
屬性
說明
python中response?r.status_code
HTTp請求的返回狀態,200表示連接成功,404表示失敗
r.text
HTTp響應內容的字符串形式,即url對應的頁面內容
r.encoding
從HTTP header中猜測的響應內容編碼方式
python django,r.apparent_encoding
從內容中分析出的響應內容編碼方式(備選編碼方式)
r. content
HTTP 響應內容的二進制形式
response的編碼意義
r.encoding
python flask。從HTTP header中猜測的響應內容編碼方式
r.apparent_encoding
從內容中分析出的響應內容編碼方式(備選編碼方式)
r.encoding:如果header中不存在charset,則認為編碼為IS0-8859-1 r.text根據r.encoding顯示網頁內容
r.apparent_encoding:根據網頁內容分析出的編碼方式。可以看作是r.encoding的備選
**
python爬蟲教程。2、requsets的異常
**
異常
說明
requsets.ConnectionError
接錯誤異常,如DNs查詢失敗、拒絕連接等
python def init,requsets.HTTPError
HTTP錯誤異常
requsets.URLRequired
URL缺失異常
requsets.TooManyRedirects
超過最大重定向次數,產生重定向異常
python data。requsets.ConnecTimeout
連接遠程服務器超時異常
requsets.Timeout
請求URL超時,產生超時異常
3、通用代碼框架
import requests
python的try、#定義通用爬蟲代碼框架
def getHTMLText(url):
try:
r=requests.get(url,timeout=30)
r.raise_for_status()#如果狀態不是200,引發HTTPError異常
r.encoding=r.apparent_encoding
爬蟲python入門。return r.text
except:
return"產生異常"
#main函數
if _name_=='_main_':
url="http://www.baidu.com"
python中with的用法?print(getHTMLText(url))
4、HTTP協議
HTTP,( Hypertext Transfer Protocol, )超文本傳輸協議
HTTP是一個基于“請求與響應”模式的、無狀態的應用層協議
HTTP 協議采用 URL 作為定位網絡資源的標識,URL 格式如下
http //host[:port][path]
python post請求?host:合法的lnternet主機域名或IP地址
port:端口號,缺省端口為80
path:請求資源的路徑
(1)HTTP協議對資源的操作
方法 說明
方法
python爬蟲有什么用、說明
GET
請求獲取URL位置的資源
HEAD
請求獲取URL位置資源的響應消息報告,即獲得該資源的頭部信息
POST
python encoding,請求向URL位置的資源后附加新的數據
PUT
請求向URL位置存儲一個資源,覆蓋原URL位置的資源
PATCH
請求局部更新URL位置的資源,即改變該處資源的部分內容
DELETE
請求刪除URL位置存儲的資源
(2)PATCH和PUT的區別
假設URL位置有一組數據UserInfo,包括UserID、UserName等20個字段
需求:用戶修改了UserName,其他不變
采用PATCH,僅向URL提交UserName的局部更新請求
采用PUT,必須將所有20個字段一并提交到URL,未提交字段被刪除
PATCH的最主要好處:節省網絡帶寬
(3)HTTP協議與Requests庫功能一致相關方法對應
HTTP協議方法
Requests庫方法
GET
requests.get()
HEAD
requests.head()
POST
requests.post()
PUT
requests.put()
PATCH
requests.patch()
DELETE
requests.delete()
版权声明:本站所有资料均为网友推荐收集整理而来,仅供学习和研究交流使用。
工作时间:8:00-18:00
客服电话
电子邮件
admin@qq.com
扫码二维码
获取最新动态