我正在写一个脚本,将清点所有的网站网址。
我正在使用CrawlSpider w/ rules处理程序来处理刮取的url。具体来说,"filter_links“检查表中现有的url。如果未找到,则写入新条目。
rules = [
Rule(SgmlLinkExtractor(unique=True), follow=True, callback="parse_item", process_links="filter_links")
]我感觉这只是一个穷人‘重新发明车轮’,在那里肯定有一个更好的方法。
是否有更好的方法来转储url发现的刮伤列表,而不是试图从响应中解析这个列表?谢谢
发布于 2014-03-17 21:12:17
我认为您使用process_links的方式与它的使用方式相同。我看不出有什么坏处。但是,如果您想摆脱这个额外的filter_links方法,那么您可以在您的parse_item方法中包括url表查找和更新逻辑。可以以response.url的形式访问response.url中的当前url。
https://stackoverflow.com/questions/22464527
复制相似问题