精品欧美一区二区三区在线观看 _久久久久国色av免费观看性色_国产精品久久在线观看_亚洲第一综合网站_91精品又粗又猛又爽_小泽玛利亚一区二区免费_91亚洲精品国偷拍自产在线观看 _久久精品视频在线播放_美女精品久久久_欧美日韩国产成人在线

這些常見的反爬蟲手段,你能攻破多少?

開發 后端
這里給大家總結出了我們在爬取數據時常見的反爬蟲手段。一起來看看吧。

在抓取對方網站、APP 應用的相關數據時,經常會遇到一系列的方法阻止爬蟲。

網站APP們這么做的原因,一是為了保證服務的質量,降低服務器負載,二是為了保護數據不被獲取。爬蟲與反爬蟲的斗爭經久不衰,

這里給大家總結出了我們在爬取數據時常見的反爬蟲手段。

1. User-Agent

網絡請求中,User-Agent 是表明身份的一種方式,網站可以通過User-Agent來判斷用戶是使用什么瀏覽器訪問。不同瀏覽器的User-Agent是不一樣的

例如,我們在windows上面的Chrome瀏覽器,它的User-Agent是:

但是如果我們使用Python的Requests直接訪問網站,除了網址不提供其他的信息,那么網站收到的User-Agent是空。

這個時候網站就知道我們不是使用瀏覽器訪問的,于是它就可以拒絕我們的訪問。

from fake_useragent import UserAgent
for i in range(1,11):
ua = UserAgent().random
print(f'第{i}次的ua是', ua)
'''
第1次的ua是 Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/29.0.1547.62 Safari/537.36
第2次的ua是 Mozilla/5.0 (Windows NT 6.1; rv:21.0) Gecko/20130401 Firefox/21.0
第3次的ua是 Mozilla/5.0 (Macintosh; U; Intel Mac OS X 10_6_6; es-es) AppleWebKit/533.20.25 (KHTML, like Gecko) Version/5.0.4 Safari/533.20.27
第4次的ua是 Mozilla/5.0 (X11; CrOS i686 4319.74.0) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/29.0.1547.57 Safari/537.36
第5次的ua是 Mozilla/5.0 (Macintosh; U; Intel Mac OS X 10_6_6; fr-ch) AppleWebKit/533.19.4 (KHTML, like Gecko) Version/5.0.3 Safari/533.19.4
第6次的ua是 Mozilla/5.0 (X11; OpenBSD i386) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/36.0.1985.125 Safari/537.36
第7次的ua是 Mozilla/5.0 (X11; NetBSD) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/27.0.1453.116 Safari/537.36
第8次的ua是 Mozilla/5.0 (X11; Linux i586; rv:31.0) Gecko/20100101 Firefox/31.0
第9次的ua是 Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 6.1; WOW64; Trident/4.0; SLCC2; .NET CLR 2.0.50727; .NET CLR 3.5.30729; .NET CLR 3.0.30729; Media Center PC 6.0; Zune 3.0)
第10次的ua是 Mozilla/5.0 (Windows NT 5.1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/31.0.1650.16 Safari/537.36
'''

2. Referer

HTTP Referer是header的一部分,當瀏覽器向web服務器發送請求的時候,一般會帶上Referer,表明這個網頁是從哪里跳過來的,是網頁防盜鏈的一種方式

有時也被用于反爬蟲。如果網站會檢查 Referer,請保證你的 Referer 始終是正確的(跳轉到此網頁之前的網頁 URL)。

3. Ajax

這個應該不算反爬?當網站使用 ajax 異步獲取數據時,我們是無法直接從網頁源代碼中獲取想要的數據的,這個時候要借助 Network 工具欄,分析 API 請求,然后使用 Python 模擬調用 API,直接從 API 中獲取數據。(多數都是 POST 類型的請求,也有小部分 GET 的)

當然,也可以使用 Selenium 等自動化測試工具直接渲染網頁,再從渲染后的網頁源碼中解析數據。

4. Cookie

在網站中,http的請求通常是無狀態的(第一個和服務器連接并且登錄之后,此時服務器知道是哪個用戶,但是當第二次請求服務器時,服務器依然不知道當前請求的是哪個用戶),cookie就是為了解決這個問題。

第一次登錄服務器后,服務器會返回與剛剛用戶相關的數據(也就是cookie)給瀏覽器,瀏覽器將cookie保存在本地,當這個用戶第二次請求服務器時,就會把上次存儲的cookie自動攜帶給服務器,服務器通過這個cookie就知道當前是哪個用戶。

在一些爬蟲中,我們在進入一個頁面之前需要先登錄,比如人人網,我們想要在人人網中瀏覽主頁,就要先注冊登錄,然后才能瀏覽,那么在爬蟲時,保持登錄狀態就需要在請求頭中加入cookie。

cookies是指網站為了辨別用戶身份,進行會話跟蹤而儲存在本地終端的數據,cookies一般再電腦中的文件里以文本形式儲存。cookies其實是有鍵值對組成的,如下圖所示:

5. 驗證碼  

驗證碼又分很多種,我們說一下比較常見的三種:字母驗證碼、拼圖驗證碼、點選式驗證碼。

字母驗證碼,就是給你一張有若干字母或數字的圖片,讓你識別出其中內容,并在文本框中輸入。比如這個:

這是最簡單的驗證碼,一般編寫深度學習模型訓練,或直接使用打碼平臺即可解決。

拼圖驗證碼,給定了一張圖片和一個滑動組件。當你拖動滑動組件時,圖片會出現缺口,拖動滑動組件,補全缺口即可過關。比類似于這種:

比較常見的做法是,通過圖片之間的對比,計算拼圖缺口的位置,然后使用特定的軌跡拖動滑塊,完成驗證。

你有兩種方法提交驗證,一是使用 Selenium 調用瀏覽器,二是直接破解 JS,使用 POST 模擬提交。

點選式的驗證碼,會給出一張小圖片(有的是圖片,有的不是,不同驗證碼平臺不一樣),上面順序顯示著幾個漢字。再給出一張大圖片,上面也有這幾個漢字,但漢字的分布是隨機的。要求你按照小圖片中漢字出現的順序,點擊大圖片中的漢字。類似于這種:

最常見的方法是借助打碼平臺計算相對坐標,然后使用 Selenium 等自動化工具按順序點擊。當然,自己訓練模型也是可行的,但比較麻煩。

對于驗證碼,可以通過OCR來識別圖片,Github上面有很多大神分享的代碼可以用,可以去看看。

簡單的OCR識別驗證碼:

from PIL import Image
import tesserocr
#tesserocr識別圖片的2種方法
img = Image.open("code.jpg")
verify_code1 = tesserocr.image_to_text(img)
#print(verify_code1)
verify_code2 = tesserocr.file_to_text("code.jpg")

6. 代理 IP 池

如果你頻繁使用同一個 IP 訪問某個網站,可能會被網站認為是惡意攻擊,進而 ban 掉你的 IP。這個時候,使用代理 IP 池就是一個很好的方案。

在一些網站服務中,除了對 user-agent 的身份信息進行檢測。

也對客戶端的 ip 地址做了限制。

如果是同一個客戶端訪問此網站服務器的次數過多就會將其識別為爬蟲。

因而,限制其客戶端 ip 的訪問。這樣的限制給我們的爬蟲帶來了麻煩,所以使用代理 ip 在爬蟲中是非常有必要的。

這里我給大家提供一下兩個網站供參考。

66代理:http://www.66ip.cn/6.html
快代理:https://www.kuaidaili.com/free/

7. 請求間隔

兩次請求之間,最好設置一定間隔。理由如下:

   請求過于頻繁,遠超出人工頻率,容易被識別出來,請不要給對方服務器造成太大壓力

且間隔的時間不要定死,在一定范圍內波動是個比較合適的選擇。過于機械的間隔時長,也可能會讓網站認為你是爬蟲。

import time
import random
for i in range(1,11):
time = random.random()*5
print(f'第{i}次睡了:', time, 's')
'''
第1次睡了: 0.6327309035891232 s
第2次睡了: 0.037961811128097045 s
第3次睡了: 0.7443093721610153 s
第4次睡了: 0.564336149517787 s
第5次睡了: 0.39922345839757245 s
第6次睡了: 0.13724989845026703 s
第7次睡了: 0.7877693301824763 s
第8次睡了: 0.5641490602064826 s
第9次睡了: 0.05517343036931721 s
第10次睡了: 0.3992618299505627 s
'''

8. 字體反爬

還有一種特殊情況,你在瀏覽器頁面上已經看到了你想要的數據,但是當你查看源碼時,根本找不到相關數據或者數據和你看到的不一致。你懷疑這個數據是通過接口異步加載的,但你檢查了請求,過程中并沒有異步請求數據接口。怎么回事?

你可能遇到了字體反爬。即目標網站通過 CSS 樣式、字體映射等方式,完成了對特定數據的隱藏。你無法直接從源碼提取相關數據,但卻不會影響網頁的顯示效果。那么,怎么解決呢?

兩種方法,第一種,破解字體的映射關系,從源碼中提取錯誤的數據,并通過特定的映射關系把它翻譯成正確的數據。第二種就是偷懶的方法了,使用 Selenium 等自動化測試工具渲染頁面,截取數據內容圖片,并通過 OCR 程序識別圖像內容。

9. 正則表達式

對于頁面解析最強大的當然是正則表達式,這個對于不同網站不同的使用者都不一樣,就不用過多的說明,附兩個比較好的網址:

正則表達式入門:

http://www.cnblogs.com/huxi/archive/2010/07/04/1771073.html

正則表達式在線測試:

http://tool.oschina.net/regex/

其次就是解析庫了,常用的有兩個lxml和BeautifulSoup,對于這兩個的使用介紹兩個比較好的網站:

lxml:http://my.oschina.net/jhao104/blog/639448
BeautifulSoup:http://cuiqingcai.com/1319.html

對于這兩個庫,我的評價是,都是HTML/XML的處理庫,Beautifulsoup純python實現,效率低,但是功能實用,

比如能用通過結果搜索獲得某個HTML節點的源碼;lxml C語言編碼,高效,支持Xpath。

10. pprint

這個是在pycharm中查看的來看效果吧

print()打印,不知道你感覺如何,我一臉懵逼。

import requests
url = 'https://www.douyu.com/gapi/rknc/directory/yzRec/1'
resp = requests.get(url).json()
print(resp)

pprint()打印,這種結構看起來如何呢?

from pprint import pprint
import requests
url = 'https://www.douyu.com/gapi/rknc/directory/yzRec/1'
resp = requests.get(url).json()
pprint(resp)

現在除了使用pprint之外,冰淇淋icecream也是很好的選擇

責任編輯:龐桂玉 來源: Python技術
相關推薦

2020-11-18 07:52:08

2018-01-29 09:28:44

2011-05-10 10:56:29

DBA面試

2009-04-26 21:45:49

2018-09-02 10:43:02

網絡故障處理手段

2017-06-30 13:23:02

2023-11-22 07:42:01

2022-11-24 10:24:32

2022-01-26 00:19:17

反爬蟲爬蟲服務器

2014-04-09 09:12:08

2019-04-23 11:21:57

ERP系統管理信息化

2016-10-13 15:51:50

2022-09-14 23:06:45

2020-12-09 18:16:48

容器云開發CaaS

2019-06-18 07:55:30

WindowsWindows 10操作系統

2019-02-12 15:00:32

Javascript命令式編程前端

2016-11-21 08:26:36

2019-12-02 09:04:12

PythonGitHub機器學習

2020-02-17 15:49:11

Python開發
點贊
收藏

51CTO技術棧公眾號

影音先锋日韩精品| 四虎精品在线观看| 久久蜜桃av一区精品变态类天堂| 国产不卡视频在线| 日本人亚洲人jjzzjjz| 99精品美女视频在线观看热舞 | 国产专区一区二区| 人妻丰满熟妇av无码区| 亚洲成人二区| 亚洲国产天堂久久综合| 中国黄色片免费看| xxxx视频在线| а√天堂8资源中文在线| 色爱综合av| 欧美日本一区二区三区四区| 欧美成人精精品一区二区频| 免费观看亚洲视频| 国产在线网站| youjizz久久| 91久久久久久久久久| 国产微拍精品一区| 一本到12不卡视频在线dvd| 亚洲精品久久7777777| 在线观看免费成人av| 国产网红在线观看| 亚洲图片激情小说| 日韩免费三级| 少妇高潮一区二区三区69| 九九精品视频在线看| 欧美亚洲免费电影| 亚洲精品中文字幕在线| 人妻一区二区三区免费| 久久99蜜桃精品| 国产精品69精品一区二区三区| 日本在线观看中文字幕| 综合久久婷婷| 精品国产一区二区三区久久狼5月| 99久久久久久久久久| 精品国内亚洲2022精品成人| 欧美一二三在线| 污污的视频免费观看| 日韩av首页| 日本高清不卡在线观看| 高清在线观看免费| 阿v视频在线| 亚洲综合色自拍一区| xxxxxx在线观看| 国产黄色在线网站| 亚洲人xxxx| 亚洲国产欧美一区二区三区不卡| 韩国中文字幕2020精品| 久久久精品免费免费| 欧美精品七区| 免费福利在线观看| 久久嫩草精品久久久精品| 久久久久久久免费| 你懂的在线网址| 国产亚洲欧美日韩俺去了| 欧美区高清在线| 精品美女视频在线观看免费软件| 久久久久久久免费视频了| 免费久久99精品国产自| 搞黄视频在线观看| 欧美国产禁国产网站cc| 天天综合中文字幕| av毛片在线播放| 亚洲午夜电影网| 成年人视频观看| 性欧美videohd高精| 色老头久久综合| 亚洲精品手机在线观看| 欧美视频二区欧美影视| 亚洲第一色中文字幕| 中文字幕在线观看网址| 精品国产乱码久久久久久果冻传媒| 亚洲少妇激情视频| 99自拍视频在线| 黄色av成人| 日本精品久久电影| 亚洲香蕉在线视频| 国产精品一区不卡| 久久精品女人的天堂av| 在线观看免费黄视频| 亚洲精品午夜久久久| 免费一级特黄毛片| 成人国产精品入口免费视频| 91精品国产福利在线观看| 美女扒开腿免费视频| 精品视频久久| 欧美激情女人20p| 销魂美女一区二区| 国产老肥熟一区二区三区| 久久精品人成| 国产在线更新| 色一情一乱一乱一91av| 国产精品久久久久久9999| 欧美电影完整版在线观看| 日韩在线视频播放| 国产日产精品一区二区三区| 精品在线视频一区| 久久偷窥视频| 伊人电影在线观看| 精品视频免费在线| 精品人妻一区二区三区日产| 成人激情视频| 性欧美xxxx视频在线观看| 一级黄色大片免费观看| 99久久国产综合精品麻豆| 亚洲人一区二区| 日本在线啊啊| 欧美变态tickling挠脚心| 美国美女黄色片| 国产视频一区在线观看一区免费| 91精品中国老女人| 国产高清视频在线| 五月婷婷激情综合| 992tv快乐视频| 婷婷六月国产精品久久不卡| 精品免费日韩av| av最新在线观看| 肉丝袜脚交视频一区二区| 国产精品免费观看高清| 八戒八戒神马在线电影| 欧美日韩国产中文| 免费看日本黄色片| 久久久久久久尹人综合网亚洲| 国产日韩在线一区二区三区| 成年人网站在线| 欧美日韩成人一区二区| 日本理论中文字幕| 久久福利一区| 久久国产精品99久久久久久丝袜| 搞黄网站在线看| 日韩视频永久免费| www.久久久久.com| 国产呦精品一区二区三区网站| 欧美人与物videos另类| 天堂av中文在线观看| 亚洲第一福利社区| 俺去啦;欧美日韩| 国产天堂第一区| 久久国际精品| 亚洲精品国产无套在线观| 日本a√在线观看| 经典一区二区| 国产91色在线|| 男同在线观看| 欧洲一区在线电影| 欧美激情视频二区| 日本sm残虐另类| 亚洲一区三区视频在线观看| 久久福利在线| 久久久精品网站| av在线免费在线观看| 亚洲乱码日产精品bd| 丰满少妇一区二区三区专区| 欧美/亚洲一区| 国产传媒一区| 天堂中文最新版在线中文| 亚洲毛片在线观看.| 中文字幕在线日本| 中文av字幕一区| 久久久久亚洲av片无码v| 欧美88av| 久久精品一二三区| 欧美xnxx| 欧美成人精品在线观看| 内射后入在线观看一区| 欧美日韩国产综合新一区 | 正在播放91九色| 欧美成人免费全部网站| 欧美老少做受xxxx高潮| 日韩中文字幕免费在线观看| 日韩欧美一区二区三区| 亚洲精品国产精品国自产网站| 免费欧美日韩国产三级电影| av电影一区二区三区| 2020国产精品极品色在线观看| 欧美美女一区二区三区| 国产午夜手机精彩视频| 顶级嫩模精品视频在线看| 国产乱子伦农村叉叉叉| 日韩精品水蜜桃| aa成人免费视频| 日韩免费福利视频| 精品自拍视频在线观看| 欧美孕妇性xxxⅹ精品hd| 欧美日韩国产经典色站一区二区三区 | 波多野结衣欧美| 日韩av手机在线观看| 国产写真视频在线观看| 日韩精品视频免费在线观看| 97人妻精品一区二区三区| 亚洲成a人片在线不卡一二三区| 国产亚洲精品熟女国产成人| 国产成人午夜高潮毛片| 日本成人中文字幕在线| 一区二区视频欧美| 亚洲乱码国产乱码精品天美传媒| 理论片一区二区在线| 国产日韩欧美成人| 竹内纱里奈兽皇系列在线观看| 久久色精品视频| 免费看男男www网站入口在线 | 精品日本美女福利在线观看| 操她视频在线观看| 久久久久久日产精品| 欧美日韩一区二区区别是什么| 日韩av中文字幕一区二区| 国产手机免费视频| 亚洲欧洲中文字幕| 神马影院我不卡| 校花撩起jk露出白色内裤国产精品| 亚洲综合在线播放| 福利一区二区免费视频| 555www成人网| 成人免费观看在线观看| 久久91亚洲人成电影网站 | 91精品国产九九九久久久亚洲| 国产在线观看av| 中国人与牲禽动交精品| 国产综合在线观看| 亚洲精品久久久久中文字幕欢迎你| 国产乱码久久久| 欧美日韩国产中文| 在线观看国产精品视频| 欧美在线免费观看亚洲| 日本中文字幕第一页| 五月婷婷综合在线| 日韩成人免费在线观看| 亚洲一区二区三区中文字幕| 国产精品视频一区二区三 | 日本阿v视频在线观看| 在线电影一区二区| eeuss中文| 香蕉精品视频在线观看| 一级黄色免费在线观看| 亚州av乱码久久精品蜜桃| 亚洲 日韩 国产第一区| 成人av国产| 一区二区三区四区视频在线 | av激情综合网| 免费黄色三级网站| 99re热这里只有精品视频| 999精品免费视频| 97se狠狠狠综合亚洲狠狠| 艳妇乳肉豪妇荡乳xxx| www.亚洲在线| 国产又爽又黄无码无遮挡在线观看| 91一区二区在线| www.自拍偷拍| 国产日韩欧美综合在线| 免费一级黄色录像| 国产精品理论片| 黑鬼狂亚洲人videos| 亚洲综合久久久久| 久久黄色免费视频| 婷婷综合在线观看| 国产成人精品777777| 欧美亚洲日本一区| 国产日韩免费视频| 精品欧美乱码久久久久久| 色婷婷视频在线| 亚洲欧美综合v| 嫩草香蕉在线91一二三区| 久久久久www| av影院在线免费观看| 日韩av在线高清| 久久精品a一级国产免视看成人| 一本一道久久a久久精品逆3p | 久久久久久美女精品 | 欧洲在线视频一区| 久久美女精品| 精品视频在线观看一区二区| 亚洲欧洲日本mm| 最新中文字幕免费视频| 国产乱国产乱300精品| 国产人妻人伦精品1国产丝袜| 国产午夜精品久久久久久久| 丁香六月激情综合| 亚洲在线视频免费观看| 国产91国语对白在线| 9191久久久久久久久久久| 成人午夜视频一区二区播放| 亚洲欧洲视频在线| av片在线观看永久免费| 日韩免费观看高清| 国产情侣一区在线| 蜜桃成人在线| 午夜电影亚洲| 国产精品久久久毛片| 成人综合在线视频| 激情高潮到大叫狂喷水| 婷婷综合在线观看| 国产成人三级在线播放| 亚洲人成人99网站| 国产探花视频在线观看| 国产精品亚洲欧美导航| 日韩精品免费一区二区夜夜嗨 | 亚洲欧美日韩国产一区| 亚洲精品乱码久久久久久动漫| 91美女在线观看| 欧美日韩免费一区二区| 欧美日精品一区视频| 五月婷婷六月丁香| 欧美精品手机在线| 国产成人a视频高清在线观看| 韩国一区二区三区美女美女秀| 天天综合网网欲色| jizz欧美激情18| 91蜜桃在线观看| 国产一卡二卡在线| 日韩小视频在线观看专区| 99青草视频在线播放视| 欧美资源在线观看| 国产乱人伦精品一区| av磁力番号网| 久久99精品一区二区三区| xxxxx在线观看| 婷婷综合五月天| 成人久久精品人妻一区二区三区| 久久精品久久久久久国产 免费| 日韩电影网站| 欧美日韩精品免费观看| 99re国产精品| 亚洲天堂av网站| 亚洲一区二区三区四区五区中文 | 精品成人免费一区二区在线播放| 久久精品国产综合精品| 国产欧美日韩综合一区在线播放 | 午夜视频一区在线观看| 精品人妻少妇AV无码专区| 久久久精品在线| 国产专区精品| 男同互操gay射视频在线看| 精品一区二区三区蜜桃| 国产白丝一区二区三区| 欧美日韩国产美| 日本暖暖在线视频| 成人免费视频97| 欧美大片aaaa| 日韩视频在线观看一区二区三区| 国产精品久久久久久久久动漫 | 亚洲免费伊人电影在线观看av| 久久青草伊人| 免费国产一区| 奇米色一区二区三区四区| 中文字幕第24页| 欧美顶级少妇做爰| 污污网站在线观看| 国产精品果冻传媒潘| 日韩五码在线| a级大片在线观看| 欧美激情自拍偷拍| 久久精品视频2| 日韩中文av在线| 亚洲91网站| 欧美黑人经典片免费观看| 91麻豆蜜桃一区二区三区| 精品国产一区二区三区四| 亚洲网站在线观看| 欧美黄色网络| 欧美极品少妇无套实战| 99久久久国产精品| av首页在线观看| 久久亚洲影音av资源网| 丁香综合av| 国产成人无码av在线播放dvd| 国产精品美女久久久久久久久| 国产精品毛片一区视频播| 欧美高跟鞋交xxxxxhd| 四虎884aa成人精品最新| 亚洲不卡视频在线| 亚洲精品亚洲人成人网| 日韩美女一级视频| 国产有码在线一区二区视频| 欧美日韩影院| 久久久久亚洲av成人无码电影| 3d动漫精品啪啪| 午夜影视一区二区三区| 亚洲高清123| 成人av动漫在线| 这里只有久久精品视频| 久久99久久99精品中文字幕 | 亚洲欧美日韩天堂一区二区| 青青青国产精品| 成人免费观看cn| 国产精品成人免费在线| 四虎永久在线观看| 国产精品热视频| 亚洲精品九九| 亚洲色偷偷综合亚洲av伊人| 亚洲精品电影网站| 在线观看亚洲精品福利片| 97国产精东麻豆人妻电影 | 亚洲 欧美 日韩 综合| 久久精品视频播放| 九九视频免费观看视频精品| 亚洲午夜精品在线观看| 欧美在线观看视频在线|