最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Python之requests的使用(二)

 更新時間:2023年04月09日 11:00:22   作者:愛吃餅干的小白鼠  
上一篇我們說了requests的簡單用法,知道了如何發(fā)送請求,今天我們更深層次的來學(xué)習(xí)requests。我們看看高級一點的操作,比如講文件上傳,cookies設(shè)置,代理設(shè)置之類的。感興趣的同學(xué)可以參考閱讀

??requests的使用(二)

上一篇我們說了requests的簡單用法,知道了如何發(fā)送請求,今天我們更深層次的來學(xué)習(xí)requests。我們看看高級一點的操作,比如講文件上傳,cookies設(shè)置,代理設(shè)置之類的。

??1.文件上傳

我們知道requests可以模擬提交一些數(shù)據(jù),除此之外。有的網(wǎng)站需要我們上傳文件,我們用requests同樣也可以實現(xiàn)。比如講,我們現(xiàn)在想上傳文件,我們可以這樣做。

import requests
 
f = {'f':open('a.text','rb')}
 
r = requests.post('http://httpbin.org/post',files = f)
 
print(r.text)

我們運行一下程序,我們看有什么效果。

 我們可以看到響應(yīng)里面包含了files的這個字段,而form這個字段是空的,這證明了文件上傳部分會單獨有一個files字段來標識。

??2.cookies

 我們可以用cookies來維持登錄狀態(tài),在瀏覽器里面,在開發(fā)者工具里面,我們可以找到cookies字段,我們可以直接復(fù)制即可。

 我們將cookies設(shè)置到headers里面,然后,發(fā)送請求,就可以登錄了。示例代碼如下:

??3.SSL證書驗證

那么什么是SSL證書呢?

  • SSL證書是一種數(shù)字證書,是一種電子副本,類似于駕駛證、護照和營業(yè)執(zhí)照的電子副本。它由受信任的數(shù)字證書頒發(fā)機構(gòu)(CA)簽發(fā),并且客戶端和服務(wù)器都必須驗證證書的有效性。
  • SSL證書的主要功能是提供服務(wù)器身份驗證和數(shù)據(jù)傳輸加密。它可以確保數(shù)據(jù)在傳輸過程中不被竊取或篡改,并且可以增強安全性,防止未經(jīng)授權(quán)的人員訪問服務(wù)器。
  • 在SSL證書驗證過程中,客戶端和服務(wù)器都需要驗證證書的有效性。

 此外,requests還有證書驗證的功能,當發(fā)送HTTP請求的時候,它會檢查SSL證書,我們可以使用verify參數(shù)控制是否檢查此證書。一般默認是打開的。

 那我們的代碼怎么寫呢?

response = requests.get('http://www.baidu.com',verify = False)

 ??4.代理設(shè)置

對于一些網(wǎng)站,在測試的時候還能獲取內(nèi)容,一旦頻繁爬取,就有可能被封IP,導(dǎo)致一段時間無法訪問。那么,為了防止這種情況發(fā)生,我們就要設(shè)置代理來解決,這里就用到了proxies參數(shù)。

Proxy 是 Python 的一個內(nèi)置模塊,它可以用來創(chuàng)建代理對象,用于在網(wǎng)絡(luò)上轉(zhuǎn)發(fā)請求和響應(yīng)。在 Python 中,可以使用 requests 庫來發(fā)送 HTTP 請求,并使用 proxies 參數(shù)來指定代理對象。

下面是一個示例代碼,演示如何使用 proxies 參數(shù)來設(shè)置代理對象:

import requests  
 
# 創(chuàng)建一個 requests 對象  
r = requests.get('http://example.com')
 
# 設(shè)置代理對象  
r.proxies = {'http': 'http://proxy.example.com:80'}
 
# 發(fā)送請求并獲取響應(yīng)  
response = r.send()
 
# 打印響應(yīng)狀態(tài)碼和頭部信息  
print(response.status_code)
print(response.headers)  
  

在上面的代碼中,我們首先創(chuàng)建了一個 requests 對象,并使用 proxies 參數(shù)設(shè)置了一個代理對象。在這個例子中,我們將 http 請求轉(zhuǎn)發(fā)到了一個名為 proxy.example.com 的代理服務(wù)器上,并將代理服務(wù)器的地址設(shè)置為 80。

然后,我們使用 send 方法發(fā)送了一個 HTTP GET 請求,并將代理對象作為參數(shù)傳遞給了它。最后,我們使用 response.status_code 和 response.headers 屬性打印了響應(yīng)狀態(tài)碼和頭部信息。
 

??5.超時設(shè)置

        在網(wǎng)路不好的時候,或者服務(wù)器響應(yīng)太慢,甚至有時候還會報錯,為了防止服務(wù)器不能及時響應(yīng),我們可以設(shè)置一個超時設(shè)置,這里就用到了timeout參數(shù)。

response = requests.get('http://www.baidu.com',timeout= 30)

request 對象的 timeout 屬性用于設(shè)置請求超時時間。默認情況下,timeout 屬性的值為 60,表示請求超時時間為 60 秒。如果需要更改超時時間,可以將其設(shè)置為一個更小的值,例如 30,表示請求超時時間為 30 秒。

如果需要在請求發(fā)送后立即返回一個響應(yīng),可以將 timeout 屬性設(shè)置為 0。這將使 timeout 屬性的值為 None,表示請求超時時間為 永遠。

??總結(jié)

今天我們更深層次的來學(xué)習(xí)requests。我們看看高級一點的操作,比如講文件上傳,cookies設(shè)置,代理設(shè)置之類的。下一篇,我們就來說說正則表達式的相關(guān)知識點。

到此這篇關(guān)于Python之requests的使用(二)的文章就介紹到這了,更多相關(guān)Python requests使用內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

最新評論

贵州省| 山东省| 静乐县| 固镇县| 白山市| 定安县| 陕西省| 新巴尔虎左旗| 攀枝花市| 克拉玛依市| 明光市| 南郑县| 荃湾区| 和平区| 大厂| 温州市| 普兰店市| 池州市| 抚松县| 乌苏市| 肃南| 那坡县| 云梦县| 三都| 宁南县| 灌云县| 泽库县| 富宁县| 菏泽市| 桃源县| 六枝特区| 舞阳县| 余庆县| 修武县| 马关县| 密云县| 周宁县| 洪洞县| 从江县| 留坝县| 蒙山县|