python使用請(qǐng)求頭部headers處理403錯(cuò)誤
前言
有時(shí)候請(qǐng)求一個(gè)網(wǎng)頁(yè)的時(shí)候,無(wú)論是GET請(qǐng)求還是POST請(qǐng)求都訪(fǎng)問(wèn)不了,并出現(xiàn)403錯(cuò)誤。這是因?yàn)檫@些網(wǎng)頁(yè)為了防止惡意采集信息,使用了反爬機(jī)制。
正文
1、都什么原因會(huì)出現(xiàn)403錯(cuò)誤呢?
403錯(cuò)誤是指訪(fǎng)問(wèn)被服務(wù)器拒絕的錯(cuò)誤。這可能是因?yàn)橛脩?hù)請(qǐng)求的資源被服務(wù)器禁止訪(fǎng)問(wèn),或者用戶(hù)沒(méi)有足夠的權(quán)限來(lái)訪(fǎng)問(wèn)資源。
有幾個(gè)可能的原因?qū)е?03錯(cuò)誤:
- 權(quán)限不足:用戶(hù)沒(méi)有足夠的權(quán)限來(lái)訪(fǎng)問(wèn)資源。這可能是因?yàn)橛脩?hù)沒(méi)有提供正確的身份驗(yàn)證憑證,或者用戶(hù)所屬的用戶(hù)組沒(méi)有訪(fǎng)問(wèn)該資源的權(quán)限。
- IP地址被拒絕:服務(wù)器可以配置為拒絕某些IP地址或IP地址范圍的訪(fǎng)問(wèn)。
- 文件或目錄權(quán)限不正確:服務(wù)器上的文件或目錄的權(quán)限設(shè)置不正確,導(dǎo)致用戶(hù)無(wú)法訪(fǎng)問(wèn)。
2、如何發(fā)送GET請(qǐng)求?
import requests # 導(dǎo)入requests模塊
response = requests.get('https://www.csdn.net/?spm=1030.2210.3001.4476')3、如何發(fā)送POST請(qǐng)求?
import requests
response = requests.post("https://www.csdn.net/?spm=1030.2210.3001.4476")
print(response.content)
403了
GET請(qǐng)求和POST請(qǐng)求的區(qū)別:
get請(qǐng)求是安全的。get請(qǐng)求是絕對(duì)安全的。因?yàn)間et請(qǐng)求只是為了從服務(wù)器上獲取數(shù)據(jù)。不會(huì)對(duì)服務(wù)器造成威脅。
post請(qǐng)求是危險(xiǎn)的。因?yàn)閜ost請(qǐng)求是向服務(wù)器提交數(shù)據(jù),如果這些數(shù)據(jù)通過(guò)后門(mén)的方式進(jìn)入到服務(wù)器當(dāng)中,服務(wù)器是很危險(xiǎn)的。另外post是為了提交數(shù)據(jù),所以一般情況下攔截請(qǐng)求的時(shí)候,大部分會(huì)選擇攔截(監(jiān)聽(tīng))post請(qǐng)求。
使用請(qǐng)求頭部headers處理
1、打開(kāi)瀏覽器
2、按下“Ctrl+Shift+E” 出現(xiàn)下面界面:

3、點(diǎn)擊藍(lán)色的部分,找到頭部信息

要的就是右下角的“'User-Agent':'Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:121.0) Gecko/20100101 Firefox/121.0'”
import requests
# 請(qǐng)求的URL
url = 'https://www.csdn.net/?spm=1030.2210.3001.4476'
header = {'User-Agent':'Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:121.0) Gecko/20100101 Firefox/121.0'}
# 請(qǐng)求的數(shù)據(jù)
data = {
'name': '后端'
}
# 發(fā)送POST請(qǐng)求
response = requests.post(url, data=data,headers=header)
# 打印響應(yīng)內(nèi)容
print(response.text)
這回變成405了哈哈,所以我們得用GET了:
import requests
# 請(qǐng)求的URL
url = 'https://www.csdn.net/?spm=1030.2210.3001.4476'
header = {'User-Agent':'Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:121.0) Gecko/20100101 Firefox/121.0'}
# 請(qǐng)求的數(shù)據(jù)
data = {
'name': 'pp'
}
# 發(fā)送POST請(qǐng)求
response = requests.get(url, data=data,headers=header)
# 打印響應(yīng)內(nèi)容
print(response.text)
以上就是python使用請(qǐng)求頭部headers處理403錯(cuò)誤的詳細(xì)內(nèi)容,更多關(guān)于python headers處理403的資料請(qǐng)關(guān)注腳本之家其它相關(guān)文章!
相關(guān)文章
Python+PySide6構(gòu)建一個(gè)響應(yīng)式視頻剪輯工具
從長(zhǎng)視頻中批量剪輯出精彩片段,傳統(tǒng)的做法是打開(kāi)笨重的剪輯軟件手動(dòng)操作,效率低下,下面我們就來(lái)講講如何使用Python構(gòu)建一個(gè)響應(yīng)式視頻剪輯工具吧2025-10-10
python多進(jìn)程程序打包成exe的問(wèn)題
這篇文章主要介紹了python多進(jìn)程程序打包成exe的問(wèn)題的相關(guān)資料,需要的朋友可以參考下2022-12-12
Python基礎(chǔ)教程之控制結(jié)構(gòu)詳解
Python中有三大控制結(jié)構(gòu),分別是順序結(jié)構(gòu)、分支結(jié)構(gòu)(選擇結(jié)構(gòu))以及循環(huán)結(jié)構(gòu),任何一個(gè)項(xiàng)目或者算法都可以使用這三種結(jié)構(gòu)來(lái)設(shè)計(jì)完成,這篇文章主要給大家介紹了關(guān)于Python基礎(chǔ)教程之控制結(jié)構(gòu)的相關(guān)資料,需要的朋友可以參考下2021-11-11
解決pandas無(wú)法在pycharm中使用plot()方法顯示圖像的問(wèn)題
今天小編就為大家分享一篇解決pandas無(wú)法在pycharm中使用plot()方法顯示圖像的問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2018-05-05
基于Python實(shí)現(xiàn)口罩佩戴檢測(cè)功能
這篇文章主要介紹了基于Python實(shí)現(xiàn)的口罩佩戴檢測(cè),在本次實(shí)驗(yàn)中,我們要建立一個(gè)目標(biāo)檢測(cè)的模型,可以識(shí)別圖中的人是否佩戴了口罩,本文通過(guò)實(shí)例代碼給大家介紹的非常詳細(xì),需要的朋友參考下吧2022-05-05

