簡單示例解析python爬蟲IP的使用(小白篇)
創(chuàng)建一個IP池并對其進(jìn)行管理
Python爬蟲常常會面臨自己ip地址被封的情況,也許剛?cè)胄械男“拙椭荒艿萯p解封之后再進(jìn)行接下來的操作了,但是這樣的方式卻是最不能借鑒的,萬一數(shù)據(jù)需求量大,那要等到猴年馬月呢?所以今天我們就來探討下如何創(chuàng)建一個IP池并對其進(jìn)行管理。對剛?cè)胄械男“缀苡袔椭?希望大家耐心看下去,需要的朋友可以參考下。
很多的網(wǎng)站都有反爬機(jī)制,其中就有這樣一條,就是服務(wù)器會檢查請求的user-agent參數(shù)值,如果檢查的結(jié)果為python,那么服務(wù)器就知道這是爬蟲,所以為了避免被服務(wù)器發(fā)現(xiàn)這是爬蟲,我們需要添加隨機(jī)user-agen。這樣就可以避免服務(wù)器發(fā)現(xiàn)這是同一個user-agent發(fā)起多次請求。
還有一條就是網(wǎng)站會封IP,一般這樣的情況就直接添加代理IP就可以,那么,從哪里獲取IP呢?小編用的是億牛云的這個網(wǎng)址,網(wǎng)址鏈接為:https://www.16yun.cn/,。
動態(tài)轉(zhuǎn)發(fā)代理
很多小白會問怎么使用IP,這里介紹一種最簡單方便的方式,那就是動態(tài)轉(zhuǎn)發(fā)代理,我們接下來分享個示例供大家參考下:
#! -- encoding:utf-8 --
import requests
import random
# 要訪問的目標(biāo)頁面
targetUrl = "http://httpbin.org/ip"
# 要訪問的目標(biāo)HTTPS頁面
# targetUrl = "https://httpbin.org/ip"
# 代理服務(wù)器(產(chǎn)品官網(wǎng) www.16yun.cn)
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,
}
# 設(shè)置IP切換頭
tunnel = random.randint(1,10000)
headers = {"Proxy-Tunnel": str(tunnel)}
resp = requests.get(targetUrl, proxies=proxies, headers=headers)
print resp.status_code
print resp.text驗證
那我們在添加了代理IP之后怎么驗證使用的ip是否可用?這里我們可以通過訪問IP檢測網(wǎng)址驗證:
http://current.ip.16yun.cn:802,只要返回的是代理IP那么就證明代理使用成功了,我們可以直接去訪問需要獲取的數(shù)據(jù)網(wǎng)站了。
以上就是簡單示例解析python爬蟲IP的使用的詳細(xì)內(nèi)容,更多關(guān)于python爬蟲IP使用的資料請關(guān)注腳本之家其它相關(guān)文章!
相關(guān)文章
Pytorch中使用ImageFolder讀取數(shù)據(jù)集時忽略特定文件
這篇文章主要介紹了Pytorch中使用ImageFolder讀取數(shù)據(jù)集時忽略特定文件,具有一的參考價值需要的小伙伴可以參考一下,希望對你有所幫助2022-03-03
Python 中l(wèi)ist ,set,dict的大規(guī)模查找效率對比詳解
這篇文章主要介紹了Python 中l(wèi)ist ,set,dict的大規(guī)模查找效率對比詳解,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下2019-10-10
使用Pycharm創(chuàng)建一個Django項目的超詳細(xì)圖文教程
Django是比較經(jīng)典的Python web框架,最近剛好在項目中用到了Django,所以下面這篇文章主要給大家介紹了關(guān)于使用Pycharm創(chuàng)建一個Django項目的超詳細(xì)圖文教程,文中介紹的非常詳細(xì),需要的朋友可以參考下2022-08-08

