我需要一个正则表达式来匹配" / page-2"或" / page-3"作为较大网址的一部分,例如http://domain.com/articles/page-number
到目前为止,我尝试过这些组合: ' / PAGE- \ d' ' / PAGE- \ d' ' \ B / PAGE- \ d \ B'
请注意,我正在使用正则表达式作为Scrapy项目的start_urls部分中规则的一部分。任何建议非常感谢。这是一个代码段:
class NdtvXoloNewsItem(CrawlSpider):
name = "ndtvxolonews"
allowed_domains = ["http://gadgets.ndtv.com/tags/"]
start_urls = ["http://gadgets.ndtv.com/tags/xolo/articles"]
rules = [Rule(LinkExtractor(allow=['\b/page\-\d\b']))]
答案 0 :(得分:0)
rules = [Rule(LinkExtractor(allow=[r'/page-\d+\b']))]
这应该为你做。
答案 1 :(得分:0)
allowed_domains
应该只是域名。您可以通过在RegEx
class NdtvXoloNewsItem(CrawlSpider):
name = "ndtvxolonews"
allowed_domains = ["gadgets.ndtv.com"]
start_urls = ["http://gadgets.ndtv.com/tags/xolo/articles"]
rules = [Rule(LinkExtractor(allow=['http://gadgets.ndtv.com/tags/.*/page\-\d+']))]