我遇到一个问题,我无法抓取包含来自php表单内容的网站的内容。我假设这是问题,因为所有其他页面都被抓取而没有问题。我正在使用Nutch 1.11和Apache Solr 5.4.1将已爬网文档编入索引。获取索引的唯一文本是来自菜单链接等的样板文本。整个文本正文永远不会被解析。
我目前正在尝试使用默认配置,除了那些允许在URL中执行php查询的配置,因此除了这个“?=”之外的其他字符都是默认设置。
如果有人能说明为什么会这样,我真的很感激它,我似乎无法在任何地方找到它作为一个问题。
下面是一个示例网站,我无法获取和解析正文。
https://www101.dcu.ie/prospective/deginfo.php?classname=BMED&originating_school=21
我已经浏览了日志,它说它已经解析了网址。它设法提取菜单文本,但没有提取主要内容。正如我所说,域名上的所有其他页面都可以毫无问题地提取。
答案 0 :(得分:0)
一般来说,默认情况下会忽略查询网址,这是因为它们可能会在已爬网的网站上受到重创(因为查询网址通常是从数据存储区/数据库动态生成的),为了解决此问题,请检查文件你把白名单的正则表达式放在哪里,那里会有一条评论明确说明接受的网址格式 - 这需要更改为允许查询网址(带有?的网址)。
感兴趣的文件名为:REGEX-URLFILTER.TXT
并将:
# regex-urlfilter.txt
+^http://www.example.com/browse
-[?]
中的内容
关于此事的有趣博客:https://datafireball.com/2014/07/20/nutch-how-regex-urlfilter-txt-really-works/ - 我不隶属