首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何使爬虫能够访问封闭(私有)的wiki?

如何使爬虫能够访问封闭(私有)的wiki?
EN

Stack Overflow用户
提问于 2011-01-27 00:40:46
回答 3查看 812关注 0票数 0

我需要向爬虫提供访问私有维基的权限。

维基对所有匿名用户关闭-你必须登录才能看到内容,但我需要提供一个单一的爬虫(由用户代理字符串和单一IP标识)完全访问,以便内容可以被索引。它是一个内部爬虫,所以只有在成功登录后才能访问它的资源。

对于如何启用对单个客户端(而不是用户,因为爬虫无法登录到wiki)的访问,有什么建议吗?

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2011-03-06 20:43:10

这个问题实际上是有解决方案的。正如我所提到的,爬虫将使用特定的IP,并且只有爬虫才会使用它。如此快速和肮脏,但仍然是一种文明的方式:

代码语言:javascript
复制
$crawler_ip = '1.2.3.4';
if ( $_SERVER['REMOTE_ADDR'] == $crawler_ip ) {
    $wgGroupPermissions['*']['read'] = true;
}

很简单,是吧?:)

票数 3
EN

Stack Overflow用户

发布于 2011-01-27 00:42:44

如果您有权访问数据库,则可以使用类似solar这样的系统中的数据库爬虫来为您完成此操作。

票数 0
EN

Stack Overflow用户

发布于 2011-01-27 00:48:05

你可以为你的爬虫创建一个自定义的用户组,比方说我们称之为‘爬虫’。因为它无论如何都要登录,所以这将是最简单的解决方案。

只需像这样给它读权限:

代码语言:javascript
复制
$wgGroupPermissions['*']['read']    = false;
$wgGroupPermissions['crawler']['read']    = true;

参考:http://www.mediawiki.org/wiki/Manual:User_rights#Changing_group_permissions

嗯,等等,我看错了。爬虫可能不是一个登录的帐户,对吗?请稍候,正在检查您是否可以为某个IP设置权限。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/4807197

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档