• Ruby 的爬虫世界 at 2016年12月06日

    @ghjcumt2008 scrapy is awesome!

    @afly IP限制,比较常见是一段时间内同一IP访问次数限制,另外有些资源还会有一些更复杂的登录令牌与IP绑定的限制,这个与资源方的风险防范机制有关。理论上,爬虫越能模拟到真实用户行为,越难防范,落实到爬虫的实现,就是各种细节上的调节。如你所说大量的手机号是有必要的,我们的其中一个项目就是开了一堆手机号和买了一堆低配红米,做到了控制短信,还有更新登录信息到服务器,还有在Android利用辅助权限上做一些模拟行为操作😅 。另外代理的话就比较好理解了,做成一个代理IP池,一个IP被封了另一个IP再上,本质就是需要很多可用的IP代理。免费的话可以爬各大代理网站提供的免费代理:

    1. http://www.xicidaili.com/
    2. http://ip.izmoney.com/
    3. http://www.kuaidaili.com/
    4. http://www.proxy360.cn/
    5. http://www.goubanjia.com/

    这里有个好玩的就是他们也有一定的防范机制,鸡生蛋生鸡😂 ,比较奇葩的是goubanjia进去是等一会儿才会变出真正的端口...

    第二种方法就是购买他们的收费代理。有了一堆IP后,我们的做法是搭一个专门的小服务,小服务会提供接口,把代理IP拿去test target,另外也有接口返回一堆可用的IP。

    当然了,如果还是感觉代理质量不太好的话(延迟、大量不可用),土豪的话可以买一堆低配的云IP服务器,可以找些切换IP比较快的服务(阿里云好像有)。最后我们还想了个方案,就是把家里空余的宽带资源也可以提供出来,用树莓派做个远程控制,IP被封了就重新上线获取新的IP,不过这个方案还没用到(上面两个已经够用了)...

  • Ruby 的爬虫世界 at 2016年12月06日

    LS说的都玩过,公司其中一个业务就要用到爬虫,自己的个人项目不少也要用到爬虫。遇到的问题有:动态加载(分析JS代码、Selenium2大杀器)、IP限制(挂各种代理[免费收费]、甚至树莓派控制ADSL路由重启获取动态IP...)、用户登录(网页的/ APP API加密破解),语言用过Python/Ruby/Nodejs。现在一些简单网页解析爬虫就用js写因为可以很快(cheerio jquery like),复杂一些要做任务调度的就Python或Ruby,团队里也有大牛用Elixir,膜拜膜拜

  • 沧蓝大大,从里屋一直追随你的步伐努力中😁

  • Ruby China 2016 纪念拉链帽衫 at 2016年11月10日

    @alphaliu 这两天穿上了,质量也就过得去,挺暖和的

  • Ruby China 2016 纪念拉链帽衫 at 2016年11月07日

    收到了,挺暖的,就是不知道大广州什么时候有机会穿

  • #11楼 @orange 只要页面是同步加载的,用gem的正常用法就可以正常展示到网页原貌。另外我当时做了把css和js都嵌在head里头

  • 赵老师,要Ruby的吗

  • 统一回答一下众同学,招聘依然继续,请直接发简历

  • object作数组这个很实用!

  • #14楼 @color_huo 你猜猜_^