某众点评网的反爬措施是真的,但误伤率也比较高。如果没有加农炮(加强型爬虫代理 IP ),获取到的数据量会少之又少。
除此之外,该网站设置了多种反爬措施,多种数据逻辑障碍等来 ban 爬虫,是我目前为止碰到的最难缠的网站。
但是如果你真的造完该站点的爬虫程序,你会发现维护很累,基本上一天一个样(可能有点夸张)。但是作为训练目标,真的很有收获。
https://github.com/Northxw/Dianping 项目已提交 github,欢迎提交 issue。
![]() | 1 PP 2019-04-25 12:01:55 +08:00 via iPad ![]() 我记得在一篇文章里面读到过一个说法,反爬不是为了阻止爬虫,而是为了增加爬虫难度,所以要一天一个样,比的就是勤勉。 有谁能够讲一讲爬虫和反爬的道理?论理不论事。请不吝赐教! |
![]() | 2 Klingon 2019-04-25 12:09:13 +08:00 #1 "比的就是勤勉" |
![]() | 3 lhx2008 2019-04-25 12:13:36 +08:00 via Android ![]() 只要能被用户看到,理论上就可以被爬,但是大规模的爬已经有很多方法控制,现在就是小规模爬取上面打游击战 @PP |
![]() | 4 dcalsky 2019-04-25 12:22:02 +08:00 via Android 楼主有研究过登录吗?登录接口需要带 cookie 才能成功的那种,而 cookie 的获取方式需要在页面上触发 click 事件从而发 http request。 |
6 dot2017 2019-04-25 12:25:57 +08:00 点评是真的变态,我现在网页版基本就处于没法用的状态,打开一家餐厅就验证,验证以后还不会自动跳转 |
![]() | 7 lithiumii 2019-04-25 12:31:54 +08:00 点评我网页版也经常用不了,后来才知道是反爬…… |
![]() | 8 n329291362 2019-04-25 12:32:49 +08:00 via Android 爬客户端协议 |
9 Northxw OP ![]() |
![]() | 10 ml1344677 2019-04-25 12:53:07 +08:00 ![]() @PP 高德的反爬从来不会限制你 IP 对服务器的访问,我需要抓取的数据里面有一个 list,顺序很重要。高德的反爬是将这个 list 的排序打乱,而你又要花计算成本去计算这个 list 是否正确。所以根本不是反爬虫,而增加了爬虫成本。 |
![]() | 11 PP 2019-04-25 12:59:47 +08:00 via iPad ![]() |
![]() | 14 l0wkey 2019-04-25 13:14:19 +08:00 17 年时候学习 pyspider 框架时候练手爬过, 爬了 1200w+的页面,基本没感受到反爬... |
![]() | 15 TheBestSivir 2019-04-25 14:01:35 +08:00 别光爬啊,多用用我司产品啊。再爬就给你们爬倒闭了呀 |
![]() | 16 stephenliubp 2019-04-25 14:18:32 +08:00 看看我的这个 Web 端反爬虫方案 : https://github.com/FantasticLBP/Anti-WebSpider |
17 Northxw OP |
19 Aliennnnnn 2019-04-25 14:55:21 +08:00 @dcalsky 用 puppeteer 呀 |
![]() | 20 JCZ2MkKb5S8ZX9pq 2019-04-25 15:09:21 +08:00 ![]() 说到某团我就来气。 去年我们好好地爬着 x 红书,给客户做媒体方案,顶多限制 ip 频次,但也能用。 然后大众 X 评 tm 就整个爬了 x 红书,把一堆现成的帖子评论放自己产品里,结果 x 红书立刻升级了反爬…… 大众 X 评自己嘛坑得一逼,贼当久了看谁都像贼。网页版正常访问,开一个页面都要验证至少两次。 已经删了,偶尔用下小程序。 |
![]() | 21 n329291362 2019-04-25 16:06:14 +08:00 @Northxw 他们客户端类似于 https 加密 好像没做反爬 |
22 Northxw OP |
23 aver4vex 2019-04-25 16:24:01 +08:00 我碰到过必须开启 Javascript 的网站,只能用 selinum 搞。 |
![]() | 25 dcalsky 2019-04-25 16:52:26 +08:00 via Android @Aliennnnnn puppeteer 慢呀 高并发需求 |
![]() | 26 tikazyq 2019-04-25 16:55:53 +08:00 已 star,考虑用 crawlab 来运行一下,https://github.com/tikazyq/crawlab |
28 Northxw OP |
30 jccg90 2019-04-25 18:10:11 +08:00 这垃圾网站,别说爬虫了。。。人去看都费劲。。。 用 app 的接口爬还行 |
![]() | 31 akira 2019-04-25 18:16:04 +08:00 反爬只能增加爬虫成本 并不能杜绝 |
![]() | 34 luanguang 2019-04-25 18:54:18 +08:00 via Android 大佬歪个楼……我想请问一下你是怎么提升爬虫技术水平的 我是一开始是使用 pyspider 爬取一些网站,然后对爬虫开始感兴趣,然后看书敲代码,学 scrapy 框架。不过遇到反爬厉害一点的网站就只会用 selenium+代理池强行怼……所以想问问有什么继续进阶的方向。 |
37 fenghuang 2019-04-25 19:44:32 +08:00 是不是必须有代理池才能玩 |
38 Northxw OP |
![]() | 39 miaomiao0323 2019-04-25 20:38:17 +08:00 @stephenliubp #16 我的理解是对数字做了一次自定义的加密,但是前端解密肯定是在 js 的啊,爬虫可以找到这段 js,把你的算法解出来 |
![]() | 40 PP 2019-04-25 20:44:03 +08:00 via iPad @JCZ2MkKb5S8ZX9pq 哈哈哈哈,笑死我了。 |
41 aver4vex 2019-04-25 20:48:46 +08:00 @crab 我爬的那个网站是先检测浏览器是否启用 js,然后服务端负责跳转到不同页面。要是用的是 react,node,vue 之类的还倒好搞。 |
![]() | 43 matsuz 2019-04-25 21:39:49 +08:00 大众点评虽然爬起来比较麻烦,不过还好吧 最麻烦的我感觉是天猫淘宝的搜索页 |
![]() | 44 redsonic 2019-04-25 21:43:33 +08:00 说实在的,啥时候有基于人工智能的爬虫. |
45 Northxw OP |
![]() | 47 rocketman13 2019-04-29 14:06:52 +08:00 问一下计算偏移量的公式在那个文件可以找到呢 |
48 Northxw OP @rocketman13 可以的,数字的偏移量计算比较固定,文字的偏移量计算比较多变,我在 md 文档里面有说明,你可以看下 |
![]() | 49 bituplink 2019-04-30 08:15:09 +08:00 ![]() @PP 可以看下这个图,我也刚尝试爬虫,但是觉得这个图让我更好的理解了爬虫与反爬虫的思路 http://www.bituplink.com/python-crawler-study-six-level-graph.html |