本文由 呆呆敲代碼的小Y 原創
學習專欄推薦:Unity系統學習專欄
游戲制作專欄推薦:游戲制作
Unity實戰100例專欄推薦:Unity 實戰100例 教程
歡迎點贊 收藏 留言 如有錯誤敬請指正!
未來很長,值得我們全力奔赴更美好的生活
------------------️分割線️-------------------------
@toc
動態代理IP,字面意思來說這個IP會隨時隨機發生變化,不是固定的,就是動態代理IP。動態代理IP一般會有網絡爬蟲用戶使用。
動態IP 分為 長效代理 和 短效代理:
長效代理代理IP:支持采集數據或者游戲掛機等許多業務,由於網絡爬蟲采集的數據量比較大,很少會選擇長效代理,長效代理IP就相當於本地IP一樣,訪問一個網站久了自然IP也會被限制,而且采集的量非常小。不利於爬蟲使用。
短效代理IP:支持數據抓取、seo優化、 APP刷量,問答推廣等許多業務。一般是網絡爬蟲用戶選擇動態短效代理IP的比較多。爬蟲的業務量大,使用動態短效代理IP去進行數據采集的話,能大大提高業務效率。
動態代理IP 還分為透明代理,匿名代理,高匿代理。
以此可以看出代理IP的質量強度。對於網絡爬蟲來說可以根據自己的需求來購買定制需要動態IP。
高匿代理自然也是動態代理IP類型中質量最好的一種,不少的企業爬蟲用戶都會選擇隧道轉發的高匿爬蟲代理IP來給業務提供需要,保證自己的業務效果和質量。
透明代理和匿名代理雖然也是代理IP,但是大大降低的爬蟲業務的進展和效率,所以網絡爬蟲選擇隧道轉發的爬蟲代理才是正確選擇。
簡單介紹了一下動態代理IP的概念和好處,再來說說怎樣申請這個 動態代理IP 。
我這裡使用的是 IPIDEA 這個網站,現在新用戶有500M流量白嫖,正好我們可以拿來做實驗。
可以直接點擊注冊就行了:http://www.ipidea.net/?utm-source=csdn&utm-keyword=?xy
進入網站之後點擊 獲取代理 -> API獲取
然後根據自己的喜好選擇 數量和地區,其他的使用默認選項即可,然後點擊下面的 生成鏈接
如果沒有實名認證的話會跳出這個界面,點擊認證就好
然後復制我們生成的鏈接,這個鏈接要保存好,後面使用Python爬取的時候會用到。
把鏈接單獨復制再打開就會看到剛才生成的IP,這部分可以用於我們自己的浏覽器手動設置使用。
正如上面所說,目前代理ip的網站非常之多,怎樣選擇合適的平台也是個值得思考的問題。
由於目前有很多的代理IP網站,根據穩定性和安全性對比價格差異很大。
IPIDEA新用戶注冊就送一部分免費的流量,這點對於我們想嘗試使用代理ip的小伙伴來說非常友好。
還有就是該平台支持住宅動態ip,這也是一個優勢。
動態住宅IP的好處:
代理ip 的使用方法有很多種,下面我就以直接在浏覽器使用和使用生成的API鏈接兩種方式做一個簡單的演示。
上一步中我們獲取到了一個 ip代理池,接下來拿QQ浏覽器示例,簡單看一下怎樣使用這些代理ip。
在QQ浏覽器菜單列表內 - 設置 - 高級 - 網絡 - 更改代理服務器設置
在彈出的Internet屬性窗口,點擊局域網設置
填寫我們復制的 IP 和 端口號,並點擊 確定
打開百度/谷歌搜索引擎,搜索:IP,查看當前代理後的IP地址
到這裡我們就是成功使用 代理ip 了,接下來使用 該代理ip 就可以干一些其他事情了~
想查看更多不同浏覽器的配置方法可以去IPIDEA官網鏈接查看
注意: 僅支持境外網絡環境下使用,不提供任何形式的境內使用方式。
但是這只是一個最簡單的用法,更高級的應該是在使用爬蟲的時候使用該動態IP代理池達到一個更好的效果。
下面就來簡單寫一個用代理ip來訪問 github python模塊的實例。
使用Python寫一個簡單的 ip代理 示例,後面使用Python爬一些其他數據的時候都可以參照。
直接使用 requests
模塊來做,然後再加一個隨機請求頭模塊 fake_useragent
和 UserAgent
。
下面就以 github python模塊 做一個簡單的示例,界面內容如下:
完整代碼如下所示,注釋很詳細,就不多做說明了。
# 微信搜索:[呆呆敲代碼的小Y],回復[白嫖]獲取超多精品編程學習資料!!# 爬蟲使用代理IP# 導入模塊:requests、fake-useragent、UserAgentimport requestsfrom fake_useragent import UserAgent# 要訪問的url地址url='https://github.com/search?q=python'# 隨機請求頭headers={'User-Agent':UserAgent().random}# 代理ip 的API(IPIDEA網站獲取的)api_url='http://tiqu.ipidea.io:81/abroad?num=100&type=1&lb=1&sb=0&flow=1®ions=&port=1'res = requests.post(api_url,headers=headers, verify=True)# proxies = {'協議': '協議://IP:端口號'}proxie = "https://%s"%(res.text)proxies = {'http': proxie}# 打印所有的代理ipprint(proxies)# 訪問github python模塊測試並輸出結果html=requests.get(url=url,headers=headers,proxies=proxies).textprint(html)# 微信搜索:[呆呆敲代碼的小Y],回復[白嫖]獲取超多精品編程學習資料!!
運行效果所示:
這裡只是演示了使用 代理ip 爬取了 github python模塊,利用好 動態代理ip 能用的事情可就更多了,大家自行體驗吧!
只要能用爬蟲的地方,我們可以自定義一個時間自動切換ip,這樣在爬取大量數據的時候就會避免被限制訪問,提高爬蟲效率。