91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Python:常見反爬策略及應對方案匯總

發布時間:2020-08-16 13:31:23 來源:ITPUB博客 閱讀:159 作者:千鋒Python唐小強 欄目:編程語言

2019常見反爬策略及應對方案大匯總了。如果你對反爬蟲的策略和手段還掌握的不很全面,進來學就對了!一切都是剛剛好,一切都不晚!

Python:常見反爬策略及應對方案匯總

1 . 構造合理的HTTP請求頭。

  • Accept
  • User-Agent - 三方庫fake-useragent
from fake_useragent import UserAgent
ua = UserAgent()
ua.ie
# Mozilla/5.0 (Windows; U; MSIE 9.0; Windows NT 9.0; en-US);
ua.msie
# Mozilla/5.0 (compatible; MSIE 10.0; Macintosh; Intel Mac OS X 10_7_3; Trident/6.0)'
ua['Internet Explorer']
# Mozilla/5.0 (compatible; MSIE 8.0; Windows NT 6.1; Trident/4.0; GTB7.4; InfoPath.2; SV1; .NET CLR 3.3.69573; WOW64; en-US)
ua.opera
# Opera/9.80 (X11; Linux i686; U; ru) Presto/2.8.131 Version/11.11
ua.chrome
# Mozilla/5.0 (Windows NT 6.1) AppleWebKit/537.2 (KHTML, like Gecko) Chrome/22.0.1216.0 Safari/537.2'
ua.google
# Mozilla/5.0 (Macintosh; Intel Mac OS X 10_7_4) AppleWebKit/537.13 (KHTML, like Gecko) Chrome/24.0.1290.1 Safari/537.13
ua['google chrome']
# Mozilla/5.0 (X11; CrOS i686 2268.111.0) AppleWebKit/536.11 (KHTML, like Gecko) Chrome/20.0.1132.57 Safari/536.11
ua.firefox
# Mozilla/5.0 (Windows NT 6.2; Win64; x64; rv:16.0.1) Gecko/20121011 Firefox/16.0.1
ua.ff
# Mozilla/5.0 (X11; Ubuntu; Linux i686; rv:15.0) Gecko/20100101 Firefox/15.0.1
ua.safari
# Mozilla/5.0 (iPad; CPU OS 6_0 like Mac OS X) AppleWebKit/536.26 (KHTML, like Gecko) Version/6.0 Mobile/10A5355d Safari/8536.25
# and the best one, random via real world browser usage statistic
ua.random
  • Referer
  • Accept-Encoding
  • Accept-Language

2 . 檢查網站生成的Cookie。

  • 有用的插件:EditThisCookie
  • 如何處理腳本動態生成的Cookie

3 . 抓取動態內容。

  • Selenium + WebDriver
  • Chrome / Firefox - Driver

4 . 限制爬取的速度。

5 . 處理表單中的隱藏域。

  • 在讀取到隱藏域之前不要提交表單
  • 用RoboBrowser這樣的工具輔助提交表單

6 . 處理表單中的驗證碼。

  • OCR(Tesseract) - 商業項目一般不考慮
  • 專業識別平臺 - 超級鷹 / 云打碼
from hashlib import md5
class ChaoClient(object):
 def __init__(self, username, password, soft_id):
 self.username = username
 password = password.encode('utf-8')
 self.password = md5(password).hexdigest()
 self.soft_id = soft_id
 self.base_params = {
 'user': self.username,
 'pass2': self.password,
 'softid': self.soft_id,
 }
 self.headers = {
 'Connection': 'Keep-Alive',
 'User-Agent': 'Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 5.1; Trident/4.0)',
 }
 def post_pic(self, im, codetype):
 params = {
 'codetype': codetype,
 }
 params.update(self.base_params)
 files = {'userfile': ('captcha.jpg', im)}
 r = requests.post('http://upload.chaojiying.net/Upload/Processing.php', data=params, files=files, headers=self.headers)
 return r.json()
if __name__ == '__main__':
 client = ChaoClient('用戶名', '密碼', '軟件ID')
 with open('captcha.jpg', 'rb') as file: 
 print(client.post_pic(file, 1902))

7 . 繞開“陷阱”。

  • 網頁上有誘使爬蟲爬取的爬取的隱藏鏈接(陷阱或蜜罐)
  • 通過Selenium+WebDriver+Chrome判斷鏈接是否可見或在可視區域

8 . 隱藏身份。

  • 代理服務 - 快代理 / 訊代理 / 芝麻代理 / 蘑菇代理 / 云代理
  • 洋蔥路由 - 國內需要 fan qiang才能使用
yum -y install tor
useradd admin -d /home/admin
passwd admin
chown -R admin:admin /home/admin
chown -R admin:admin /var/run/tor
tor
向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

泗洪县| 汶上县| 罗江县| 灵石县| 张家港市| 四子王旗| 凤冈县| 卢龙县| 清远市| 张掖市| 定安县| 京山县| 石河子市| 无为县| 龙州县| 疏附县| 育儿| 怀来县| 右玉县| 固阳县| 平度市| 肥西县| 桐庐县| 通辽市| 攀枝花市| 都安| 普安县| 含山县| 乐亭县| 万山特区| 贵溪市| 乐东| 确山县| 湟中县| 泰州市| 宁明县| 和田市| 扬州市| 涡阳县| 临桂县| 南华县|