2010-04-24 32 views
9

如何防止我的asp.net 3.5网站被我的竞争对手刮屏? 理想情况下,我想确保没有webbots或screenscrapers可以从我的网站提取数据。如何防止我的asp.net网站被屏幕刮掉?

有没有办法检测到有webbot或屏幕刮板运行?

+0

@AndrewBarber ... OP不要求代码。 – Csharp 2013-07-19 20:10:35

回答

12

有可能尝试检测画面撷取:

使用cookies和时机,这将使它更难对于那些开箱画面撷取的。同时检查javascript的支持,大多数刮板没有它。检查Meta浏览器数据以验证它确实是一个Web浏览器。

您还可以在一分钟内检查请求,驱动浏览器的用户每分钟只能发出少量请求,因此服务器上每分钟检测到太多请求的逻辑可以假定屏幕正在发生抓取并阻止在一段时间内访问有问题的IP地址。如果这开始影响搜寻器,请记录被阻止的用户IP,并根据需要开始允许其IP。

您也可以使用http://www.copyscape.com/来处理您的内容,这至少会告诉您谁在重复使用您的数据。

看到这个问题也:

Protection from screen scraping

而且看看

http://blockscraping.com/

尼斯DOC约屏幕抓取:

http://www.realtor.org/wps/wcm/connect/5f81390048be35a9b1bbff0c8bc1f2ed/scraping_sum_jun_04.pdf?MOD=AJPERES&CACHEID=5f81390048be35a9b1bbff0c8bc1f2ed

如何防止屏幕抓取:

http://mvark.blogspot.com/2007/02/how-to-prevent-screen-scraping.html

+0

+1好答案。但是......我击败了大部分守卫,因此我的答案是。 ;-) – 2010-04-24 17:49:01

+1

他的问题是,是否有可能检测到。这是,并且很容易让编写一个程序来刮擦网站变得很痛苦,但这不是100%,但会让它变得更难。如果用户可以在浏览器中显示它,则可以编写脚本,除非使用验证码访问您不想要的信息。 – 2010-04-24 17:51:01

+0

是的,你是对的。我有责任回答不同的问题。 – 2010-04-24 20:23:30

2

我认为不验证用户访问您的网站是不可能的。

+0

@Raj,所以认证将阻止(当然竞争可以注册并运行一个S/S) – user279521 2010-04-24 17:26:34

+1

认证甚至不会妨碍它,如果他们想凑他们将脚本指出,过程中容易。 – 2010-04-24 17:30:59

+0

不确定您是否拥有可访问您的应用的授权用户列表。显然,这不是这种情况。 – 2010-04-24 21:45:23

8

拔下网线到服务器。

释义:如果公众可以看到它,它可以被刮掉。

更新:第二次看,似乎我没有回答这个问题。抱歉。 Vecdid提供了一个很好的答案。

但任何一半体面的编码可能会击败列出的措施。在这种情况下,我的答案可以被认为是有效的。

+0

+1最佳答案,但可能不是操作者想听到的,但它是唯一的解决方案。确实是 – mxmissile 2010-04-24 20:50:18

+0

。这就像是防止右键点击以窃取图像时很时髦。 – renoirb 2012-07-09 15:39:45

1

最终你不能阻止这一点。

您可以通过设置robots.txt文件等方式让人们更难做到。但是,您必须将信息传送到合法用户的屏幕上,以便以某种方式提供服务,并且如果是这样竞争对手可以得到它。

如果您强制用户登录,您可以随时停止机器人,但无论如何也没有什么能阻止竞争对手为您的网站注册。如果他们无法访问“免费”的某些信息,这也可能会驱使潜在客户离开。

+0

@ChrisF,有没有办法检测到有webbot或screen scraper运行? – user279521 2010-04-24 17:25:45

+0

@user - 看看这方面比我更有经验的人的其他答案 – ChrisF 2010-04-24 17:31:01

0

我不认为这是可能的。但是无论你会提出什么,这对于搜索引擎优化和竞争对手都是一样糟糕。这真的很可取吗?

0

如何文本的每一位成为了为图像?一旦完成,无论是你的竞争对手将被迫投资OCR技术,或者你会发现你没有用户 - 所以这个问题将是没有意义的。

1

您可以使用验证码。

此外,您还可以通过限制其连接,而不是减轻它。它不会完全阻止他们屏幕抓取,但它可能会阻止他们获得足够的数据来实现。

首先,对于用户的Cookie,油门连接,所以你可以看到以每秒最多一个页面视图,但一旦你的1秒计时器到了你体验没有任何限制。对普通用户没有影响,对屏幕刮板有很大的影响(至少如果你有很多页面他们的目标)。

接下来,需要cookies来查看数据敏感的页面。

,他们将能够获得,但只要你不接受假饼干,他们将不能够屏幕刮多少与任何真实的速度。