2010-08-19 111 views
2

我们使用自动化工具可以轻松地在GridView和细节视图中显示数据。我的问题是,如果有人使用一些自动化工具并登录到网站并剪下数据,我们怎么能找到它?我们如何检测一个人是否正在查看该网站或工具?例如,一种方法是计算用户停留在页面中的时间,从中我们可以检测是否涉及人为干预。我不知道如何实现,只是想着这个方法。任何人都可以帮助如何检测和防止自动工具从我的网站上抓取数据?我在登录部分使用了安全映像,用户必须输入登录部分显示的用户名,密码和安全映像才能登录。即使在主页上,人们也可以键入安全图像并登录到该网站,然后使用自动工具从网站上取消数据!!当经过一段时间后出现了一个恢复图像时,用户可以单独输入安全形象,并再次使用自动化工具从网站上取消数据。实际上,我甚至开发了一个工具来取消另一个网站的数据。所以只有我想阻止这种情况发生在我的网站!防止自动工具访问网站

回答

3

这是网络。你需要假设你放在那里的任何东西都可以被人或机器读取。即使你今天可以预防,明天也有人会想出如何绕过它。 Captchas have been broken for some time now,迟早,替代品也会如此。

但是,here是暂时的一些想法。

here是几个。

和我最喜欢的。我遇到的一个聪明的网站有一个很好的网站。它有一个问题,如“关于我们”关于我们“页面,我们支持办公室的街道名称是什么?”或类似的东西。需要一个人来找到“关于我们”页面(链接没有说“关于我们”,它说的是类似的东西,但人们会发现)然后找到支持办公室地址(与主要公司不同办公室和网页上列出的其他几个人),你必须查看几场比赛。目前的计算机技术无法想象它能发现真正的语音识别或认知。

谷歌搜索“Captcha alternatives”变成了相当多的东西。

+0

是的,但是因为每一项安全功能都可能被打破,所以您不能离开您的网站而没有任何安全功能。 – 2010-08-19 05:26:26

+0

同意,但安全规则#1是假设您的网站是脆弱的,并深入实施防御。而且我不得不怀疑,如果它是人类阅读网站或不知道它有多重要?这应该是其中的一个问题,但我还没有遇到这种情况,这将是一个破坏交易的情况。确保网站的一切都在您的处理之中,而人与机器人问题则不是一个因素。 – David 2010-08-19 05:27:54

+1

是的,我认为这里的目的应该是让拼图变得困难,而不是找到用户是机器还是人类。 – 2010-08-19 05:38:53

0

我想唯一好的解决方案是限制数据可以访问的速度。它可能并不能完全防止抓取,但至少可以限制自动抓取工具的工作速度,希望低于阻止抓取数据的水平。

0

我应该注意一下如果有意愿的话,那么有个办法

话虽这么说,我想到您之前问这里有一些我想出了简单的事情:

  1. 简单幼稚的检查可能是用户代理过滤和检查。您可以在这里找到常用爬虫用户代理的列表:http://www.useragentstring.com/pages/Crawlerlist/

  2. 您可以随时在闪存中显示您的数据,但我不推荐使用它。

  3. 使用验证码

除此之外,我真的不知道是否有其他任何你可以做,但我会希望看到的答案也是如此。

编辑:

谷歌做一些有趣的事情,如果你正在寻找的核潜艇,其中第50页左右,他们将验证码后。它提出了一个问题,看看您是否可以智能地计算用户在您的网页上花费的金额,或者您是否想将分页引入方程式,即用户在一页上花费的时间。

使用我们之前假设的信息,可以在发送另一个HTTP请求之前放置时间限制。此时,“随机”生成验证码可能会有所帮助。我的意思是说,一个HTTP请求可能会通过,但下一个将需要验证码。你可以随意切换。

6

不要做到这一点。

这是网络,如果他们真的需要,你将无法阻止某人抓取数据。我已经做了很多很多次,并且解决了他们实施的所有限制。实际上有一个限制激励我进一步尝试获取数据。

越限制系统,越会为合法用户提供用户体验。只是一个坏主意。

+1

很高兴能从eeeeevilllll这边看到某个人的观点。 ;-) – David 2010-08-19 05:56:31

0

这样做不会冒着误报(和恼人的用户)的风险。

我们如何检测人是否在浏览网站或工具?

你不能。你将如何处理为人类解析页面的工具,如屏幕阅读器和辅助工具?

例如,一种方法是计算用户停留在页面中的时间,从中我们可以检测到是否涉及人为干预。我不知道如何实现,只是想着这个方法。任何人都可以帮助如何检测和防止自动工具从我的网站上抓取数据?

你不会自动检测工具,只不寻常的行为。在你定义不寻常的行为之前,你需要找到平常的东西。人们查看不同顺序的页面,浏览器标签允许他们这样做并行任务等

+0

像Google这样的网站有跟踪逻辑,以查找人工干预是否涉及网站使用!我只想知道这一逻辑,以便我们至少可以在一定程度上防止这些工具! – banupriya 2010-08-20 06:31:22

0

的scrappers通过解析URL和阅读网页的源代码,盗取你的网站的数据。如果不是不可能的话,可以采取以下步骤以至少使困难变得困难。

Ajax请求,难以分析数据,并要求在获得被解析的URL的额外工作。甚至不需要任何身份验证,一旦用户访问该主页,然后它要求所有的内pages.This创建的cookie正常页面

使用的cookie使得刮有点困难。

在网站上显示加密的代码,然后使用JavaScript代码在加载时解密它。我曾在几个网站上看到过它。

+0

创建Cookie如何防止自动工具?无论是一个工具还是一个人进入该页面,都会创建cookie?请提供加载时显示加密和解密代码的JavaScript代码。在我的网站中,我使用base64加密来加密密码。我应该加密查询字符串吗? – banupriya 2010-08-19 05:56:47

+0

我没有说创建cookie会阻止自动化工具,它只是使创建报废工具变得困难,并且需要额外的努力。 – 2010-08-19 06:31:50

+0

请参阅这里了解加密的html。 http://www.iwebtool.com/html_encrypter类似的东西也可以在你的网站上实现。 – 2010-08-19 06:37:10