V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX 提问指南
Cadina
V2EX  ›  问与答

防止网站数据被别人抓取,有哪些途径和具体的措施?

  •  
  •   Cadina · 2013-06-09 11:46:25 +08:00 · 6317 次点击
    这是一个创建于 4212 天前的主题,其中的信息可能已经有所发展或是发生改变。
    从豆瓣旅行的事情想到的,有没有实际可行的放抓取方法呢?

    我能想到的几点:

    1.通过UA限制访问,不过UA很容易模拟绕过
    2.在网页内容和结构上做混淆,比如打乱顺序,再通过js调整到顺序正常
    3.从抓取频率上控制,基于Cookie和IP限制访问频率,可以利用Web Server的防攻击策略来做
    4.频繁地,不规律地(不可预测)改变网页结构,增大抓取成本

    因为没做过抓取,不知道是否实际可行,请大家提供建议。
    20 条回复    1970-01-01 08:00:00 +08:00
    explon
        1
    explon  
       2013-06-09 11:49:08 +08:00
    关闭网站别人就抓不到了
    Cadina
        2
    Cadina  
    OP
       2013-06-09 11:50:01 +08:00
    @explon 额。。只是想从技术上探讨一下,没有其他意思:)
    Zhang
        3
    Zhang  
       2013-06-09 12:01:24 +08:00
    转换成图片?
    Zhang
        4
    Zhang  
       2013-06-09 12:01:38 +08:00
    像京东那样!
    lch21
        5
    lch21  
       2013-06-09 12:01:51 +08:00
    全部用java script 输出内容
    Zhang
        6
    Zhang  
       2013-06-09 12:02:27 +08:00
    @lch21 那就是像facebook那样咯?
    Cadina
        7
    Cadina  
    OP
       2013-06-09 12:07:14 +08:00
    @Zhang 图片体验不太好
    Zhang
        8
    Zhang  
       2013-06-09 12:12:38 +08:00
    @Cadina 那就学facebook的timeline和newsfeed那样吧
    shizhuan
        9
    shizhuan  
       2013-06-09 12:16:45 +08:00
    藏一些彩蛋,然后用法律武器搞死他!

    参见最近豆瓣旅游爬别人数据被抓的案例...
    y051313
        10
    y051313  
       2013-06-09 12:27:52 +08:00
    @shizhuan
    个人网站没功夫折腾的。。。

    我网站上的图片和文字被一个香港人拷贝,然后放到ebay上面了,图片上面还有我的水印。我发邮件给ebay,ebay让我给出证据,我说水印不是证据吗?答复说不行,需要公证
    airyland
        11
    airyland  
       2013-06-09 12:54:14 +08:00
    除了做成图片,写一个chrome插件基本破掉所有的限制。不过,做成图片的话,相当蛋疼吧。
    Cadina
        12
    Cadina  
    OP
       2013-06-09 13:22:31 +08:00
    @airyland 和chrome插件有什么关系呢,我想讨论的是脚本爬虫抓取
    xingzhi
        13
    xingzhi  
       2013-06-09 14:17:58 +08:00   ❤️ 1
    robbin的这篇文章总结得很好: http://robbinfan.com/blog/11/anti-crawler-strategy
    Rabbit52
        14
    Rabbit52  
       2013-06-09 14:21:26 +08:00
    那样SEO就不好咯~
    ejin
        15
    ejin  
       2013-06-09 16:31:06 +08:00
    全站flash 不解释 什么js都弱爆了
    code4craft
        16
    code4craft  
       2013-06-09 22:23:39 +08:00
    根本上来说,因为html的特点,没啥好办法,更何况还要照顾搜索引擎爬虫。
    ajax加载只是增加一些爬取的成本,写半小时的代码变成写一小时代码,没啥区别。
    Cookie没啥用,之前还写过一个带自动登录功能的爬虫,去爬人人日志...
    限制IP频率可以拦住一些小站或者个人,算是比较靠谱的办法。
    binux
        17
    binux  
       2013-06-09 22:31:29 +08:00
    如果认真思考过“信息是什么”就知道——这不可能
    cloudzen
        18
    cloudzen  
       2013-06-09 23:03:36 +08:00
    只要是给人看的网站就没办法组织别人抓取
    Air_Mu
        19
    Air_Mu  
       2013-06-10 01:03:38 +08:00
    在footer诅咒采集狗是比较靠谱的办法。
    xhinking
        20
    xhinking  
       2013-06-10 01:50:56 +08:00
    开放api并规定相关使用条约也许是个不错的选择。
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   1677 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 28ms · UTC 16:40 · PVG 00:40 · LAX 08:40 · JFK 11:40
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.