如果是让我写,我优先选用selenium(chromedriver),模拟正常浏览。效率低很多,但是数据靠谱。
爬虫与反爬,就像生存与死亡,是一个值得考虑到问题。写爬虫,目的是获得数据。如果是简单、无争议公开的数据,只要不对服务器造成压力,方法都不重要。但往往要获取的数据,很多情况下对方都不希望通过爬虫自动化轻易得到。这时候,双方工程师、甚至是律师就要博奕了。
红方:基于数据统计、机器学习的方法,判断区别与常人浏览的途径很多。
蓝方:针对红方的可能手段,也有很多途径。所谓上有政策,下有对策。比如维护一个IP池自动切换。博奕,说白了就是斗争。没有永远胜利的一方。花费精力写一个专业爬虫,但这个爬虫可能也需要维护的。个人觉得不值得,应该想想其他方式。
专业爬虫,核心不会用python写的大前端的语言,js+抓包分析是更加胜任爬虫的语言。一是爬取的数据,大部份都是来自网站或APP。用原汁原味的js,再对口不过。同时,效率会更高。据我所知,很多竞争对手爬取对方的价格,基本都绕不开js。用python会适得其反。
说个反爬的损招通过nginx配置,能实现简单的反爬,这里说一个损招。
一般对方爬取我方数据时,我们都会设置路障,比如要求对方输入手机验证码、识别图片、或者告知,请24小时候再来访问。
不妨反其道而行之,如果能确认对方是爬虫,不要阻止对方来爬取,二是造随机数据给对方爬。数据伪装成什么样,可以灵活控制。可以80%假,20%真。或者比例反过来。甚至比例可以随机。这种方法可以捉弄对方的工程师。
最后友情提醒,爬虫有风险,码农要谨慎。
添加上方▲技术, 在线咨询
复制微信号
声明
一、本站原创内容,其版权属于本网站所有。其他媒体、网站或个人转载使用时不得进行商业性的原版原式的转载,也不得歪曲和篡改本网站所发布的内容。如转载须注明文章来源。
二、本网站转载其它媒体作品的目的在于传递更多信息,并不代表本网站赞同其观点和对其真实性负责;如侵犯你的权益请告诉我们立即删除;其他媒体、网站或个人转载使用自负法律责任。
发表评论
2021-11-13 16:46:31回复