【问题标题】:Search bot detection搜索机器人检测
【发布时间】:2012-05-28 14:40:44
【问题描述】:

是否可以防止网站被任何抓取工具抓取,但同时允许搜索引擎解析您的内容。

仅仅检查用户代理并不是最好的选择,因为它很容易模拟它们。

JavaScript 检查可能是(谷歌执行 JS)一个选项,但一个好的解析器也可以做到。

有什么想法吗?

【问题讨论】:

    标签: web-scraping bots search-engine-bots


    【解决方案1】:

    使用DNS checking卢克! :)

    1. 检查用户代理,看看它是否将自己标识为搜索引擎机器人
    2. 如果是,获取请求页面的 IP 地址
    3. 反向 DNS 查找 IP 地址以获取主机名
    4. 转发 DNS 查找主机名以获取 IP 地址

    Google 的帮助文章 Verifying Googlebot 中提供了相同的想法

    【讨论】:

    • 是的,这正是我所需要的。谢谢你:)
    【解决方案2】:

    检查链接访问时间可能是可能的,换句话说,如果首页被点击,那么首页上的链接都被“快速”点击。

    更简单的是,在页面中放置一些隐藏的链接;机器人会跟随,人们几乎不会。

    【讨论】:

    • 但是,它不会也阻止搜索引擎机器人吗?
    • @user584397 大多数合法的搜索机器人都是这样标识自己的,不是吗?我的意思是,您正在尝试做一些基本上不可能的事情,因为任何机器人都可以完全执行页面,了解隐藏的内容,随机延迟以模拟人类浏览等。您的期望必须是合理的,并且无论您做什么都应该有合理的投资回报率。
    猜你喜欢
    • 2010-10-15
    • 2011-03-09
    • 2014-06-25
    • 1970-01-01
    • 2013-07-21
    • 2010-09-25
    • 2014-05-22
    • 2016-03-17
    相关资源
    最近更新 更多