PornHub 爬蟲心得

2018-11-02 01:45:58 +08:00
 timliu22322266

开始以前 查了 github 上关键字'PornHub' 发现大部分人都选择了 Python 用 Java 专案写的寥寥无几 使用 Crawler4j 发现了一些问题 上来跟各位伙伴分享下

1.Crawler4j 把 CONCURRENT_THREAD 包装了, 他的 starNonBlock 让 PornHub 很容易发生 429 的错误.

2.防爬虫的其他方式是 cookie, Crawler4j 对动态换 cookie 支援很差 最后我只能覆盖掉她的 getHeader 才达到每个 requert 不同 agent, random key

目前已经可以达到持续执行 24 小时不会被防爬虫侦测, 相对降低了些效能 欢迎大家检讨 我会持续回覆改善 以达到更完美的效能 若有喜欢的朋友也可給个星

https://github.com/tim232385/PornBot

54209 次点击
所在节点    Java
6 条回复
Tink
2018-11-02 07:58:06 +08:00
666
dream10201
2018-11-02 08:52:45 +08:00
没什么意思,硬盘没他家得大
timliu22322266
2018-11-02 21:22:56 +08:00
今日在公司有了新想法,
1.预计会增加 h2xSpirngDB 纪录已攀过的网站
2.增加 config.properties 可选择不进行下载
3.增加搜寻页面可查看数据库资料
4.Java Deep 对一些资料做出分析整理(这里完全没有概念...预计要 2~3 周时间才能做到了)


喜欢的朋友可帮点星代表对我的支持:)
timliu22322266
2018-11-02 21:26:15 +08:00
@Tink
@dream10201

感謝回覆, 還有其他意見歡迎在提供 我會視情況增加至我的專案
timliu22322266
2018-11-03 20:47:04 +08:00
增加了 spring boot - H2 DB 增加了 config 讓使用者可選擇是否下載(僅蒐集已爬過的資料)

啟動 jar 後 在瀏覽器打 http://localhost:8000/h2-console/ 會出現 DB 管理頁面
timliu22322266
2018-11-08 12:24:38 +08:00
Pornhub 用页面的 javascript 计算出下一次请求的 cookie 值,
所以无法单纯使用请求拿到这组键
目前用 java 读取该页面的公式及参数运算,再放进 cookie 中
429 的错误已解决,目前稳定爬资料一晚.

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/503603

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX