1

我是使用scrapy和正则表达式的新手,但经过研究,它们似乎是我提取我希望scrapy遵循的链接的最佳解决方案。我正在尝试从我的起始 URL 跟踪仅包含特定状态缩写的链接,但我遇到的问题是包含缩写的 URL 不统一,它们具有不同的长度、不同数量的前导和尾随字符以及我的一生无法找出正确的正则表达式来提供scrapy以遵循我想要的链接。对此的任何帮助将不胜感激。

抱歉没有给出任何示例链接看起来像这样

/813rents-Inc_Tampa_FL__148254837
/A-Amp-M-Realty_Riverview_FL_92361_037984837
/A-Altieri_Tampa_FL_1257391_877954837
4

1 回答 1

1

您可以从子类CrawlSpider化并使用allow选项 from SgmlLinkExtractor,它接受正则表达式:

rules = (
  Rule(SgmlLinkExtractor(allow=(r'_FL_'), follow=True),
  Rule(SgmlLinkExtractor(allow=(r'...'), callback='parse_item').
)

def parse_item(self, response):
  ...
于 2013-10-03T20:10:10.330 回答