真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

爬蟲過程中加上這些策略讓你采集效率更高

我們都知道在采集數(shù)據(jù)過程中,尤其是爬取大量數(shù)據(jù)的時候,很多網(wǎng)站都有反爬蟲措施,封 ip是很嚴重的,,讓你在采集的時候很心煩。本文就如何解決這個問題總結(jié)出一些應(yīng)對措施,這些措施可以單獨使用,也可以同時使用,效果更好。

創(chuàng)新互聯(lián)專業(yè)為企業(yè)提供西藏網(wǎng)站建設(shè)、西藏做網(wǎng)站、西藏網(wǎng)站設(shè)計、西藏網(wǎng)站制作等企業(yè)網(wǎng)站建設(shè)、網(wǎng)頁設(shè)計與制作、西藏企業(yè)網(wǎng)站模板建站服務(wù),10年西藏做網(wǎng)站經(jīng)驗,不只是建網(wǎng)站,更提供有價值的思路和整體網(wǎng)絡(luò)服務(wù)。

一 、偽造 User-Agent

在請求頭中把 User-Agent 設(shè)置成瀏覽器中的 User-Agent ,來偽造瀏覽器訪問。比如:

headers = {'User-Agent':'Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/52.0.2743.116 Safari/537.36'}

resp = requests.get(url,headers = headers)

在每次重復爬取之間設(shè)置一個隨機時間間隔

# 比如:

time.sleep(random.randint(0,3))  # 暫停 0~3 秒的整數(shù)秒,時間區(qū)間: [0,3]

# 或:

time.sleep(random.random())  # 暫停 0~1 秒,時間區(qū)間: [0,1)

而且最主要的是 ua 要越多越好,不要固定的使用那幾個,要經(jīng)常更換最新真實的 ua 。

二、 偽造 cookies

若從瀏覽器中可以正常訪問一個頁面,則可以將瀏覽器中的 cookies 復制過來使用,比如:

cookies = dict(uuid='b18f0e70-8705-470d-bc4b-09a8da617e15',UM_distinctid='15d188be71d50-013c49b12ec14a-3f73035d-100200-15d188be71ffd')

resp = requests.get(url,cookies = cookies)

# 把瀏覽器的 cookies 字符串轉(zhuǎn)成字典

def cookies2dict(cookies):

    items = cookies.split(';')

    d = {}

    for item in items:

        kv = item.split('=',1)

        k = kv[0]

        v = kv[1]

        d[k] = v

return d

注:用瀏覽器 cookies 發(fā)起請求后,如果請求頻率過于頻繁仍會被封 IP ,這時可以在瀏覽器上進行相應(yīng)的手工驗證(比如點擊驗證圖片等),然后就可以繼續(xù)正常使用該 cookies 發(fā)起請求。

三、 使用代理

可以換著用多個代理 IP 來進行訪問,防止同一個 IP 發(fā)起過多請求而被封 IP ,比如:

  # 要訪問的目標頁面

        targetUrl = "http://httpbin.org/ip"

 

         # 要訪問的目標HTTPS頁面

         # targetUrl = "https://httpbin.org/ip"

 

         # 代理服務(wù)器

        proxyHost = "t.16yun.cn"

        proxyPort = "31111"

 

         # 代理隧道驗證信息

        proxyUser = "username"

        proxyPass = "password"

 

        proxyMeta = "http:// %(user)s : %(pass)s @ %(host)s : %(port)s "  % {

             "host"  : proxyHost,

             "port"  : proxyPort,

             "user"  : proxyUser,

             "pass"  : proxyPass,

        }

 

         # 設(shè)置 http和https訪問都是用HTTP代理

        proxies = {

             "http"   : proxyMeta,

             "https"  : proxyMeta,

        } (這里是用的億牛云的動態(tài)轉(zhuǎn)發(fā)代理進行示例)

不管我們采集什么網(wǎng)站的數(shù)據(jù),光有代理是不行的,要配合多種反爬策略一起才能更高效的獲取大量的數(shù)據(jù)。


網(wǎng)頁題目:爬蟲過程中加上這些策略讓你采集效率更高
轉(zhuǎn)載注明:http://weahome.cn/article/pehshi.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部