网络爬虫中的索引步骤
我正在写一个网络爬虫(专注型爬虫),它的工作是:
输入:种子网址(seedsURL)
输出:更多的种子网址(bigger seedsURL)
def crawl(seedURL, pageslimit):
crawling code ...
return list of urls crawled
现在我需要对数据进行索引和存储,以便快速准确地检索信息(像搜索引擎那样)。
- 我的爬虫返回了一系列网址,我该如何将这些网址传递到索引阶段?我需要把每个页面的内容下载到一个文本文件里吗?
- 有没有一些工具或库可以帮助我完成索引这一步?还是说这一步必须手动来做?
1 个回答
0
你绝对应该使用Scrapy来做网页爬虫工作。我会给你一个例子,说明它是怎么用的,以及你的网页索引应该是什么样的。如果还有其他问题,可以去看看这个网站!
使用Scrapy提供的XPath表达式,你可以提取你想要的资源,包括整个文件。
比如说:<h1>达尔文 - 一场展览的演变</h1>
对应的XPath表达式是://h1/text()
这样做有什么好处呢?通过h1标签,你可以把它当作一个字典里的键。拥有字典后,你可以更方便地访问文件。就像这样:
web_index = {
'Darwin': 'example.html',
'Evolution': 'example.html'
}
把网页索引放在字典里是最好的,因为字典是键值对,你可以很容易地进行“搜索”,而不像在列表里那样依赖索引。