我的网站上有链接保护,以防止搜索机器人扫描它,这种保护基于javascript href替换页面onload(最初编码并以'#'为前缀,如下所示:
<a href="#real_link_crunched_here">...</a>
我知道Google现在可以执行javascript,因此可以关注“受保护”链接。 是否正确的方法来防止谷歌机器人(以及其他机器人)执行javascript?
答案 0 :(得分:3)
@Epsiloncool没有绝对的方法来阻止机器人做一些用户可以在浏览器中做的事情......做这种事情的唯一方法就是通过验证码。您 COULD 绑定到mouseover事件以交换链接,然后 可以更好地工作。
我建议将rel="nofollow"
属性添加到A元素中,至少然后尊重此类操作的机器人可以执行他们需要的操作。
你可能在页面上还有一个表单,并绑定此类操作以更改帖子网址,然后将该表单提交到下一页。 BOT应从不进行HTTP POST。但是,任何机器人都会忽略rel = nofollow。
答案 1 :(得分:2)
您应该使用robots.txt
文件告诉合法机器人哪些网址无法加载,或者您可以在不希望编入索引的网页的<meta name="robots" content="noindex" />
块中执行<head>
。
您还可以<a rel="nofollow">
让Google忽略这些链接标记。
答案 2 :(得分:0)
如果您正在寻找更高级的“防御”方法,我猜你们已经有robots.txt
了。如果他们是友好的机器人,他们会在user-agent
字符串中让自己变得难以理解,但如果没有,他们可能会自称internet explorer
并忽略您的robots.txt
。你仍然可以进行图灵测试,我猜......
你仍然可以在你的起始页面上放置一些令人难以置信的简单拼图,以便摆脱它们,我想,但这也可能疏远一些访问者。
以下是不同机器人用户代理的列表,如果您想查看: http://www.smart-it-consulting.com/internet/google/googlebot-spoofer/