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

2013-06-09 11:46:25 +08:00
 Cadina
从豆瓣旅行的事情想到的,有没有实际可行的放抓取方法呢?

我能想到的几点:

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

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

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

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

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

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

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

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

© 2021 V2EX