PHP採集,除了VPN,還有哪些方法可以更換IP ?

來源:互聯網
上載者:User
用PHP做採集,對方伺服器封IP,需要每隔幾分鐘自動更換IP。目前買了幾個付費的VPN軟體,可以按照一定的時間間隔切換線路,達到更換IP的目的,這類VPN軟體有個通病,容易閃退,線路品質有的也不行。
還嘗試過其他方法:
1、使用PHP curl的代理功能,對方伺服器有時候可以識別出來,而且代理很不穩定。
2、試用了某寶上面的秒換IP VPS伺服器,就是用軟體自動撥號,切換IP,這種方式,如果VPS的IP段不夠多的話,也容易被對方伺服器發現,直接被封IP段。
還有其他穩定可靠的偽裝IP的方法麼,IP地址國內的就行,線路多,最好能實現按照一定的時間間隔自動切換IP。

回複內容:

謝邀!首先用VPN來防止對方封IP是不可取的,因為成本太高。其次是curl上類比頭部IP,如果對方伺服器上不做真實IP識別是發現不了的,如果做了那利用CURL來欺騙是不可取的。
上面三樓提到了偽裝成百度蜘蛛,這個較為可取,因為百度蜘蛛的IP是定時更換的,所以一般網站都會只識別蜘蛛頭部來為蜘蛛開一個綠色通道。這樣就可以利用CURL來偽裝頭部進行提交了。
當然,如果對方網站做得非常嚴密,嚴密到可以識別一切偽裝。可以利用自己現有網站的頁面中鑲嵌隱形iframe的方式來抓取頁面和圖片,發送的IP是訪問者用戶端的IP,在網頁中寫一個JS事件來監聽iframe,當載入完成後將內容ajax到伺服器。Python Scrappy 文檔有一節專門講這個問題的可能方案
Common Practice s: Avoiding getting banned
VPN不是大型蜘蛛反偵測的解決方案。偽裝成百度蜘蛛。謝邀,php有curl這麼強大的庫不用,用vpn浪費錢還麻煩,給你講解一下具體實現思路。
首先php curl帶上頭資訊:
curl_setopt($ch, CURLOPT_HTTPHEADER, array(‘X-FORWARDED-FOR:8.8.8.8′, ‘CLIENT-IP:8.8.8.8′)); //構造IP
curl_setopt($ch, CURLOPT_REFERER, “http://www.5lazy.cn/ “); //構造來路
curl_setopt($ch, CURLOPT_HEADER, 1);
然後帶上UA資訊(這個可以百度,類似教程很多)。首先curl資料需要即時抓取嗎,如果不需要還是建議curl下來放資料庫吧,偽造IP不一定有用,你可以試試。ssh / http proxy,走curl
可以自己擷取IP,建立IP使用原則弄一個大的http代理的列表(網上很多),每次用不同的通過代理去訪問。騷年,幹點正經工作吧,採集人家東西不好。
  • 聯繫我們

    該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

    如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

    A Free Trial That Lets You Build Big!

    Start building with 50+ products and up to 12 months usage for Elastic Compute Service

    • Sales Support

      1 on 1 presale consultation

    • After-Sales Support

      24/7 Technical Support 6 Free Tickets per Quarter Faster Response

    • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.