日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区

您的位置:首頁技術文章
文章詳情頁

python實現三種隨機請求頭方式

瀏覽:26日期:2022-06-30 13:02:04

相信大家在爬蟲中都設置過請求頭 user-agent 這個參數吧? 在請求的時候,加入這個參數,就可以一定程度的偽裝成瀏覽器,就不會被服務器直接識別為spider.demo.code ,據我了解的,我很多讀者每次都是直接從network 中去復制 user-agent 然后把他粘貼到代碼中, 這樣獲取的user-agent 沒有錯,可以用, 但是如果網站反爬措施強一點,用固定的請求頭可能就有點問題, 所以我們就需要設置一個隨機請求頭,在這里,我分享一下我自己一般用的三種設置隨機請求頭方式

思路介紹:

其實要達到隨機的效果,很大程度上我們可以利用隨機函數庫random 這個來實現,可以調用random.choice([user-agent]) 隨機pick數組中一個就可以了,這是我的一種方式。

python作為一個擁有眾多第三方包的語言,自然就有可以生成隨機請求頭的包咯,沒錯,就是fake-useragent 這個第三方庫了,稍后我們介紹一下這個函數庫的簡單使用。

既然別人可以寫第三方庫,自然自己也可以實現一個這樣的功能,大部分情況下,我很多代碼都是直接調用我自己實現的一個GetUserAgentCS 類,直接就可以獲取一個隨機請求頭了,直接寫函數庫,才牛逼舒服, 這個我也會在下面介紹如何編寫函數庫。

自己編寫第三方庫:

不知道你們寫代碼的框架是怎樣的,面向過程還是面向對象? 對于一次性的代碼,就簡單的編碼就行了,如果你覺得這個代碼它可以會在很多的地方用得到,可以重復使用,那么你就可以使用類的方式,去編寫這個代碼,那么在其他的文件中,你就可以直接調用你的寫這個文件,直接調用你寫的class類中的各種方法,而我也是這樣實現的一個隨機請求頭的一個第三方庫, 如下:

import randomimport csvclass GetUserAgentCS(object): ''' 調用本地請求頭文件, 返回請求頭 ''' def __init__(self): with open(’D://pyth//scrapy 項目//setting//useragent.csv’, ’r’) as fr: fr_csv = csv.reader(fr) self.user_agent = [str(i[1]) for i in fr_csv] def get_user(self): return random.choice(self.user_agent)

useragent文件如下:

1,'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/81.0.4044.129 Safari/537.36,Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/27.0.1453.93 Safari/537.36'2,'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/81.0.4044.129 Safari/537.36,Mozilla/5.0 (Windows NT 6.2; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/30.0.1599.17 Safari/537.36'3,'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/81.0.4044.129 Safari/537.36,Mozilla/5.0 (X11; NetBSD) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/27.0.1453.116 Safari/537.36'4,'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/81.0.4044.129 Safari/537.36,Mozilla/5.0 (X11; CrOS i686 3912.101.0) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/27.0.1453.116 Safari/537.36'5,'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/81.0.4044.129 Safari/537.36,Mozilla/5.0 (Macintosh; Intel Mac OS X 10_7_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/27.0.1453.93 Safari/537.36'-------------- # too much 100...

代碼很簡單的,讀取本地的csv文件,然后random一個出去就行了,那現在就有人問我,你這個文件怎么來的, 很簡單啊,自然就有方法了,待會在下一個模塊我會講到,在這里,我們只需要編寫一個GetUserAgentCS類就可以,代碼可以直接抄我上面的,然后保存為get_useragent.py 就可以了,然后你把這個包文件放在你自己爬蟲文件夾的地方,然后這樣調用:

from get_useragent import GetUserAgentCSheaders = {}ua = GetUserAgentCS().get_user()headers[’user-agent’] = uareturn headers

如果你在這個調用GetUserAgentCS 不成功, 或者底下會出現紅色的波浪線, 那么就是你沒有設置當前工作環境,你只需要這么設置(設置你的爬蟲文件夾):

python實現三種隨機請求頭方式

你需要點擊 Sources Root 就可以了!

使用第三方庫 fake-useragent:

這是一個別人已經寫好的第三方庫,你需要安裝然后調用API 就可以了, 它可以獲取各種的請求頭,唯一的缺點就是 請求不穩定,有的時候網絡波動就可能導致獲取不成功,用于Scrapy中,不是很舒服,所以我在這個包的基礎上,編寫了如上我自己的包,至于請求頭的數據怎么來的, 就是在這個包運行正常時候,一直更改user-agent,然后不斷的請求 http://httpbin.org/user-agent 然后不斷的保存數據,寫入本地文件就可以了。

我們還是講一講這個包的使用方式吧!

安裝

pip install fake-useragent

你可以 pip list 查看一下 是否安裝成功

使用方式

from fake_useragent import UserAgentheaders= {’User-Agent’:str(UserAgent().random)}r = requests.get(url, headers=headers) UserAgent().random 可以獲取任意瀏覽器的請求頭 UserAgent().Chrome 可以獲取谷歌瀏覽器的請求頭 UserAgent().firefox 可以獲取火狐瀏覽器的請求頭

這個時候,直接用random就可以了,簡單。

讀取內存數組:

這個時候就有很多人說, 我就換個請求頭而已,需要這么麻煩嗎? 當然,自然有簡單的方式,只不過每次都需要復制來用,不是很方法,具體如下:

ua = ['Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/81.0.4044.129 Safari/537.36,Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/27.0.1453.93 Safari/537.36''Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/81.0.4044.129 Safari/537.36,Mozilla/5.0 (Windows NT 6.2; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/30.0.1599.17 Safari/537.36''Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/81.0.4044.129 Safari/537.36,Mozilla/5.0 (X11; NetBSD) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/27.0.1453.116 Safari/537.36']

預先把請求頭放入數組里面,然后用就可以了。

import randomua = [.....]r = requests.get(url, headers={'user-agent':random.choice(ua)})

以上就是我關于請求頭的幾種設置方式了,有需要補充的可以評論區留言。

教你用三種方式設置隨機請求頭, 爬蟲設置請求頭(user-agent)是必然的,那如何生成一個隨機請求頭這個也是我們爬蟲必須掌握的, 讀完本篇文章你就可以輕松掌握 !

到此這篇關于python實現三種隨機請求頭方式的文章就介紹到這了,更多相關python 隨機請求頭內容請搜索好吧啦網以前的文章或繼續瀏覽下面的相關文章希望大家以后多多支持好吧啦網!

標簽: Python 編程
相關文章:
日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区
亚洲综合国产| 国产精品久久久久久久免费软件| 亚洲免费观看| 亚洲精品动态| 丝袜av一区| 久久麻豆视频| 天堂中文av在线资源库| 91精品一区二区三区综合在线爱| 亚洲精品电影| 国产欧美自拍| 亚洲成av在线| 日本一区二区三区中文字幕| 国产欧美日韩一级| 日韩欧美三级| 视频福利一区| 红桃视频亚洲| 国产乱码精品一区二区亚洲| 亚洲美女久久| 精品视频一区二区三区在线观看| 欧美日韩午夜电影网| 日本在线视频一区二区| 精品亚洲精品| 影音先锋久久| 免费一级欧美片在线观看网站| 亚洲女同中文字幕| 国产精品美女午夜爽爽| 国产白浆在线免费观看| 亚洲精品乱码| 久久中文字幕av一区二区不卡| 久久精品播放| 日韩精品国产精品| 欧美不卡高清一区二区三区| 超碰成人av| 欧美资源在线| 国产精品调教| 视频一区在线播放| 精品三级久久久| 蜜臀久久99精品久久久久宅男| 神马久久午夜| 麻豆中文一区二区| 日本亚洲不卡| 日本免费在线视频不卡一不卡二| 亚洲高清久久| 成人在线视频免费看| 国产成人精品亚洲日本在线观看| 韩国精品主播一区二区在线观看 | 视频一区中文| 高清久久精品| 婷婷亚洲五月| 91欧美日韩| 国产中文欧美日韩在线| 国产三级一区| 亚洲开心激情| 国产视频一区三区| 一区二区小说| 伊人久久在线| 久久亚洲道色| 国产精品久久国产愉拍| 日韩精品一区二区三区中文在线| 免费观看久久av| 伊人久久婷婷| sm久久捆绑调教精品一区| 国产欧美一区二区色老头| 丝袜a∨在线一区二区三区不卡| 精品国模一区二区三区| 国模精品一区| av高清一区| 日韩欧美一区二区三区在线视频| 最新亚洲一区| 奇米狠狠一区二区三区| 日韩精品导航| 亚洲69av| 精品国产美女a久久9999| 久久福利在线| 国产一区二区三区四区| 日韩免费福利视频| 国产精品免费99久久久| 日韩国产一区| 国产91精品对白在线播放| 婷婷综合五月| 日本欧美韩国一区三区| 久久一区精品| 国产亚洲一级| 日韩在线观看中文字幕| 久久一区亚洲| 亚洲欧洲一区| 国产精品超碰| 亚洲欧美日韩视频二区| 亚洲网址在线观看| 另类小说一区二区三区| 日韩一级精品| 国产精选一区| 国产精品女主播一区二区三区| 欧美特黄a级高清免费大片a级| 免费人成在线不卡| 你懂的国产精品永久在线| 精精国产xxxx视频在线播放 | 免费美女久久99| 欧美日韩xxxx| 亚洲制服少妇| 欧洲av不卡| 久久福利影视| 国产一区二区视频在线看| 玖玖精品视频| 国产在线|日韩| 日本强好片久久久久久aaa| 日本精品久久| 一区福利视频| 亚洲风情在线资源| 九九九精品视频| 久久国内精品自在自线400部| 欧美日韩国产观看视频| 欧美日韩一区二区国产| 亚洲一区二区三区久久久| 亚洲福利久久| 韩日一区二区| 国产精品久久久亚洲一区| 999国产精品永久免费视频app| 欧美激情在线精品一区二区三区| 夜夜嗨一区二区| 免费观看亚洲天堂| 中文国产一区| 亚洲女同一区| 蜜桃视频欧美| 国产一区二区三区视频在线| 国产日产精品_国产精品毛片 | 亚洲大全视频| 久久99免费视频| 蜜臀久久久99精品久久久久久| 成人在线免费观看网站| 国产不卡一区| 久久精品青草| 精品欧美激情在线观看| 日韩精品一二三区| 蜜臀久久99精品久久久画质超高清 | 国产毛片精品久久| 亚洲精品美女91| 亚洲三级视频| 欧美中文一区| 国产欧美日韩精品一区二区三区| 日韩av网站在线观看| 欧美精品影院| 国产精品亚洲综合在线观看| 国产日韩欧美一区二区三区| 欧美伊人影院| 国产成人精品一区二区免费看京 | 日韩不卡一区二区| 日本电影久久久| 中文视频一区| 国产亚洲欧美日韩精品一区二区三区| 日韩有码av| 高清一区二区| 亚洲黄色在线| 亚洲精品高潮| 久久一区精品| 91精品一区二区三区综合在线爱 | а√在线中文在线新版| 在线视频观看日韩| 日韩中文字幕不卡| 成人国产精品一区二区免费麻豆| 精品午夜久久| 色婷婷综合网| 在线精品视频一区| 水蜜桃久久夜色精品一区| 免费一级片91| 国产精品亚洲综合久久| 91成人超碰| 国产专区精品| 欧美综合二区| 久久精品国产在热久久| 欧美色图国产精品| 亚洲欧美一级| 91精品韩国| 蜜桃传媒麻豆第一区在线观看| 国产精品男女| 亚洲精品乱码久久久久久蜜桃麻豆| 蜜臀久久99精品久久久久久9| 久久精品国产999大香线蕉| 99久久久久国产精品| 亚洲精品在线影院| 另类亚洲自拍| 美腿丝袜亚洲一区| 日韩在线卡一卡二| 日韩视频网站在线观看| 精品亚洲成人| 国产欧美在线观看免费| 一区二区不卡| 美国三级日本三级久久99| 99国产精品免费视频观看| 一区二区三区四区日本视频| 日韩精品高清不卡| 久久青草久久| 国产粉嫩在线观看| 欧美日韩国产一区二区在线观看| 六月丁香综合| 午夜宅男久久久| 亚洲一区二区三区四区电影| 午夜一级在线看亚洲| 日韩在线一区二区| 老色鬼久久亚洲一区二区|