日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪(fǎng)問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 编程语言 > python >内容正文

python

python爬虫 隐藏身份及设置代理

發(fā)布時(shí)間:2024/4/11 python 28 豆豆
生活随笔 收集整理的這篇文章主要介紹了 python爬虫 隐藏身份及设置代理 小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

User-Agent

當(dāng)我們使用爬蟲(chóng)訪(fǎng)問(wèn)各大網(wǎng)站時(shí),可能會(huì)被網(wǎng)站發(fā)現(xiàn)訪(fǎng)問(wèn)者只是一段python寫(xiě)出的代碼,從而拒絕我們的訪(fǎng)問(wèn),如果想要解決這個(gè)問(wèn)題,我們可以去修改user-agent。
首先,我們需要打開(kāi)我們的瀏覽器,通過(guò)審查元素找到我們的user-agent
一般通過(guò)一下兩種方法來(lái)添加
1.add_headers方法

req = request.Request(url)req.add_header('User-Agent', 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/79.0.3945.130 Safari/537.36')

2.設(shè)置一個(gè)head字典,作為參數(shù)傳進(jìn)去

head = {} head = {'User-Agent' : 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/79.0.3945.130 Safari/537.36'} rep = urllib.request.Request(url, data, head)

延時(shí)訪(fǎng)問(wèn)

當(dāng)我們?cè)谕坏刂废露啻卧L(fǎng)問(wèn)時(shí),有可能會(huì)被服務(wù)器給禁止訪(fǎng)問(wèn),所以我們可以使用兩種方法來(lái)解決,一種是延時(shí)訪(fǎng)問(wèn),一種是設(shè)置代理
如果需要延時(shí)訪(fǎng)問(wèn),我們只需要在每一次訪(fǎng)問(wèn)后停止一段時(shí)間即可,可以使用time模塊中的sleep函數(shù)來(lái)完成

time.sleep(3)

設(shè)置代理

我們可以考慮使用代理ip來(lái)訪(fǎng)問(wèn)來(lái)解決這個(gè)問(wèn)題,對(duì)于代理服務(wù)器我們可以在google上面隨便找一找


我們可以隨便找?guī)讉€(gè)代理ip,然后用random模塊的choice函數(shù)來(lái)隨機(jī)選擇

iplist = ['36.25.243.51:80', '59.56.28.199:80', '39.106.223.134:80'] proxy = urllib.request.ProxyHandler({'http':random.choice(iplist)})

如果訪(fǎng)問(wèn)量大的話(huà)可以考慮去爬取大量的代理ip

首先我們要?jiǎng)?chuàng)建一個(gè)opener

opener = urllib.request.build_opener(proxy)

然后安裝這個(gè)opener

urllib.request.install_opener(opener)

之后即可通過(guò)普通的方式訪(fǎng)問(wèn)了,訪(fǎng)問(wèn)之前可以試試有沒(méi)有成功用上代理,有很多可以查詢(xún)自己Ip地址的網(wǎng)站


返回的ip正好是我們表中的第二個(gè)代理Ip
當(dāng)返回的ip和自己設(shè)置的代理ip相同時(shí)即成功使用代理

import urllib.request import randomurl = 'http://whatismyip.host/' iplist = ['36.25.243.51:80', '59.56.28.199:80', '39.106.223.134:80'] proxy = urllib.request.ProxyHandler({'http':random.choice(iplist)})opener = urllib.request.build_opener(proxy)opener.addheaders = [('User-Agent', 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/79.0.3945.130 Safari/537.36')] urllib.request.install_opener(opener)response = urllib.request.urlopen(url) html = response.read().decode('utf-8')print(html) 超強(qiáng)干貨來(lái)襲 云風(fēng)專(zhuān)訪(fǎng):近40年碼齡,通宵達(dá)旦的技術(shù)人生

總結(jié)

以上是生活随笔為你收集整理的python爬虫 隐藏身份及设置代理的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

如果覺(jué)得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。