Javascript 针对爬虫程序和机器人程序的HTML 5存储
我目前正在编写一个视图/访问者计数器,它检查访问者是人类还是机器人/爬虫。我已经找到了一些解决方案,我正在使用。其中之一是cookie(使用Javascript设置),但有些机器人已经允许设置cookie,而有些人不允许:/ 现在我想问的是,在HTML5存储中设置一些东西是否更有效。机器人支持HTML5存储技术作为cookies的可能性可能更大,或者?是否可以在任何(人类)浏览器上禁用HTML5存储?我还没有找到任何选择 谢谢, 山姆 注:我在脚本中已经知道/使用了一些有用/信息丰富的东西:Javascript 针对爬虫程序和机器人程序的HTML 5存储,javascript,php,html,local-storage,Javascript,Php,Html,Local Storage,我目前正在编写一个视图/访问者计数器,它检查访问者是人类还是机器人/爬虫。我已经找到了一些解决方案,我正在使用。其中之一是cookie(使用Javascript设置),但有些机器人已经允许设置cookie,而有些人不允许:/ 现在我想问的是,在HTML5存储中设置一些东西是否更有效。机器人支持HTML5存储技术作为cookies的可能性可能更大,或者?是否可以在任何(人类)浏览器上禁用HTML5存储?我还没有找到任何选择 谢谢, 山姆 注:我在脚本中已经知道/使用了一些有用/信息丰富的东西:
爬虫程序通常不执行Javascript。因此,您可以使用JS监控访问。你也可以过滤掉机器人的用户代理 下面是我在爬虫用户代理中找到的第一个列表
我使用此工具通过Google bot呈现页面,结果是Google bot支持HTML 5存储: 用于测试存储支持的代码: 此代码使用此代码检测:
/* Detect browser can use web storage */
if (!typeof(Storage) !== 'undefined') {
$('#yay').fadeIn('slow');
} else {
$('#ooh').fadeIn('slow');
}
获取和渲染为bot的工具:
渲染结果:
我使用此工具通过Google bot呈现页面,结果是Google bot支持HTML 5存储: 用于测试存储支持的代码: 此代码使用此代码检测:
/* Detect browser can use web storage */
if (!typeof(Storage) !== 'undefined') {
$('#yay').fadeIn('slow');
} else {
$('#ooh').fadeIn('slow');
}
获取和渲染为bot的工具:
渲染结果: