像安全與黑客歷來都是相輔相成同樣。
爬蟲與反爬蟲也是在雙方程序員的鬥智鬥勇的過程不斷髮展和成長的。html
抓包的目的: 分析出協議請求使用的數據,請求接口,參數等等。
經常使用的抓包分析工具:程序員
- Fiddler
- Charles
- Sniffer
- Wireshark
具體使用策略,請自行百度,Google。apache
充分了解 HttpClient 的特性,使用方式等。
HttpClient4.5官方教程安全
使用 user_agent 的假裝和輪換模擬不一樣的客戶端。
創建UserAgent池,能夠經過如下地址獲取必定量的UserAgent的信息。cookie
http://www.fynas.com/ua/search?b=Chrome&k=
創建代理ip池,通常使用的免費或收費代理獲取代理ip每秒都會有必定的頻率限制。
那麼咱們在使用的時候,就要在頻率限制內創建本身內部的一些策略,
固然這些策略創建在代理服務商的策略之上。所以設計實施時要考慮易維護性。工具
有些網站(包括APP、PC)具備必定的反爬蟲能力,
如拒絕代理ip直接請求接口:
這是我使用代理ip請求登陸接口時,某APP的響應:網站
CONNECT refused by proxy
而使用socks代理則無此問題。這就不得不要了解http代理和socks代理的區別。設計
待續代理
即使是使用了代理ip,那麼對目標接口的訪問也要有必定的頻率控制,
防止目標服務方檢測出頻率過快,進行拒絕服務的響應。code
獲取目標站點Cookie有效時間,
將對應帳號和Cookie存入Redis,
起一個任務對帳號Cookie進行定時檢測,
接近失效時間,進行提早更新Cookie信息,
具體Cookie 池Cookie的失效和更新策略須要根據本身業務進行適當調整。
- 確保同一帳號的請求使用的是同一個UserAgent、同一個代理ip。
- 注意訪問頻率
- 其餘
總而言之,就是模擬正常的客戶端發起對服務方的請求,假裝的越像正常的客戶端,服務方越難分析出。
只要是服務方可以提供服務,通常狀況下均可以進行數據的爬取,
只不過是難易程度不一樣。
若是出於商業目的,要考慮付出的成本究竟是否合適。
做者:隨風浮雲
出處:http://www.cnblogs.com/ljmatlight 本文版權歸做者全部,歡迎轉載,但未經做者贊成必須保留此段聲明, 且在文章頁面明顯位置給出原文鏈接,不然保留追究法律責任的權利。