我需要向爬虫提供访问私有维基的权限。
维基对所有匿名用户关闭-你必须登录才能看到内容,但我需要提供一个单一的爬虫(由用户代理字符串和单一IP标识)完全访问,以便内容可以被索引。它是一个内部爬虫,所以只有在成功登录后才能访问它的资源。
对于如何启用对单个客户端(而不是用户,因为爬虫无法登录到wiki)的访问,有什么建议吗?
发布于 2011-03-06 20:43:10
这个问题实际上是有解决方案的。正如我所提到的,爬虫将使用特定的IP,并且只有爬虫才会使用它。如此快速和肮脏,但仍然是一种文明的方式:
$crawler_ip = '1.2.3.4';
if ( $_SERVER['REMOTE_ADDR'] == $crawler_ip ) {
$wgGroupPermissions['*']['read'] = true;
}很简单,是吧?:)
发布于 2011-01-27 00:42:44
如果您有权访问数据库,则可以使用类似solar这样的系统中的数据库爬虫来为您完成此操作。
发布于 2011-01-27 00:48:05
你可以为你的爬虫创建一个自定义的用户组,比方说我们称之为‘爬虫’。因为它无论如何都要登录,所以这将是最简单的解决方案。
只需像这样给它读权限:
$wgGroupPermissions['*']['read'] = false;
$wgGroupPermissions['crawler']['read'] = true;参考:http://www.mediawiki.org/wiki/Manual:User_rights#Changing_group_permissions
嗯,等等,我看错了。爬虫可能不是一个登录的帐户,对吗?请稍候,正在检查您是否可以为某个IP设置权限。
https://stackoverflow.com/questions/4807197
复制相似问题