python中response.text 和response.content的區(qū)別詳解
1.response.text
- 類型:str
- 解碼類型: 根據(jù)HTTP 頭部對(duì)響應(yīng)的編碼作出有根據(jù)的推測(cè),推測(cè)的文本編碼
- 如何修改編碼方式:response.encoding=”gbk”
2. response.content
- 類型:bytes
- 解碼類型: 沒(méi)有指定
- 如何修改編碼方式:response.content.deocde(“utf-8”)
3.獲取網(wǎng)頁(yè)源碼的通用方式:
response.content.decode() response.content.decode(“GBK”)
解碼方式可以根據(jù)響應(yīng)頭中找到Content-Type:text/html;charset=utf-8或者網(wǎng)頁(yè)源碼中content="text/html;charset=utf-8''來(lái)決定.
response.text
以上三種方法從前往后嘗試,能夠100%的解決所有網(wǎng)頁(yè)解碼的問(wèn)題
所以:更推薦使用**response.content.deocde()**的方式獲取響應(yīng)的html頁(yè)面
補(bǔ)充:python3中requests 常用response
看代碼吧~
import requests res = requests.get("http://127.0.0.1:9092") print(res.status_code) # 200 print(res.url) # http://127.0.0.1:9092/ print(res.headers) # {'Content-Type': 'application/json; charset=utf-8', 'Content-Length': '10', 'Date': 'Sat, 22 Dec 2018 13:36:16 GMT', 'Connection': 'keep-alive'} print(res.cookies) # <RequestsCookieJar[<Cookie cid=hello world for 127.0.0.1/>]> print(res.text) # 8248154254 print(res.content) # b'8248154254' 寫(xiě)圖片 print(res.cookies['cid']) # hello world # 爬取 圖片 r1 = requests.get('https://timgsa.baidu.com/timg?image&quality=80&size=b9999_10000&sec=1545496551516&di=8ed19596bc72aa87299ed7f234830128&imgtype=0&src=http%3A%2F%2Fimg5.duitang.com%2Fuploads%2Fitem%2F201107%2F31%2F20110731155631_htMcs.jpg') b = r1.content with open('hao.jpg','wb') as f: f.write(b)
以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
python3.4實(shí)現(xiàn)郵件發(fā)送功能
這篇文章主要為大家詳細(xì)介紹了python3.4實(shí)現(xiàn)郵件發(fā)送功能,含帶中文附件,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2018-05-05Python3自動(dòng)簽到 定時(shí)任務(wù) 判斷節(jié)假日的實(shí)例
今天小編就為大家分享一篇Python3自動(dòng)簽到 定時(shí)任務(wù) 判斷節(jié)假日的實(shí)例,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2018-11-11Python操作MySQL數(shù)據(jù)庫(kù)的簡(jiǎn)單步驟分享
這篇文章主要給大家介紹了關(guān)于Python操作MySQL數(shù)據(jù)庫(kù)的簡(jiǎn)單步驟,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2021-04-04Python調(diào)用釘釘自定義機(jī)器人的實(shí)現(xiàn)
這篇文章主要介紹了Python調(diào)用釘釘自定義機(jī)器人的實(shí)現(xiàn),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2020-01-01python區(qū)分不同數(shù)據(jù)類型的方法
這篇文章主要介紹了python區(qū)分不同數(shù)據(jù)類型的方法實(shí)例以及相關(guān)知識(shí)點(diǎn),需要的朋友們學(xué)習(xí)下。2019-10-10Python ldap實(shí)現(xiàn)登錄實(shí)例代碼
今天給大家分享python idap實(shí)現(xiàn)登錄的實(shí)例代碼,代碼簡(jiǎn)單易懂,需要的朋友一起看看吧2016-09-09python實(shí)現(xiàn)書(shū)法碑帖圖片分割
這篇文章主要為大家詳細(xì)介紹了python實(shí)現(xiàn)書(shū)法碑帖圖片分割,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2021-03-03YOLOv5改進(jìn)系列之增加小目標(biāo)檢測(cè)層
yolov5出來(lái)已經(jīng)很長(zhǎng)時(shí)間了,所以有關(guān)yolov5的一些詳細(xì)介紹在這里就不一一介紹了,下面這篇文章主要給大家介紹了關(guān)于YOLOv5改進(jìn)系列之增加小目標(biāo)檢測(cè)層的相關(guān)資料,需要的朋友可以參考下2022-09-09