Python 网站正则表达式
是我想要正则表达式的网站 到目前为止,我正在使用以下内容,其中Python 网站正则表达式,python,regex,spyder,Python,Regex,Spyder,是我想要正则表达式的网站 到目前为止,我正在使用以下内容,其中 '.+\/news\/business[-.]\d{8}$ 这是这个代码段的一部分,与Scrapy一起使用 from scrapy.item import Item, Field from scrapy.contrib.linkextractors import LinkExtractor from scrapy.contrib.spiders import CrawlSpider, Rule class TryItem(Ite
'.+\/news\/business[-.]\d{8}$
这是这个代码段的一部分,与Scrapy一起使用
from scrapy.item import Item, Field
from scrapy.contrib.linkextractors import LinkExtractor
from scrapy.contrib.spiders import CrawlSpider, Rule
class TryItem(Item):
url = Field()
class BbchrcrawlerSpider(CrawlSpider):
name = "bbchrcrawler"
allowed_domains = ["www.bbc.com"]
start_urls = ['http://www.bbc.com/news/business-']
rules = (Rule(LinkExtractor(allow=['.+\/news\/business+\-d{8}$']), callback='parse_item', follow=True),)
def parse_item(self, response):
Item = TryItem()
Item['url'] = response.url
yield Item
获取URL的正确方法是什么,以提取具有相同格式的多个页面
结果应收集以下格式的URL:
bbc.com/news/business-######你可以试试这个:
pattern = "bbc\.com/news/business-\d+"
rules = (Rule(LinkExtractor(allow=[pattern]), callback='parse_item', follow=True),)
您可以尝试以下方法:
pattern = "bbc\.com/news/business-\d+"
rules = (Rule(LinkExtractor(allow=[pattern]), callback='parse_item', follow=True),)
+/news/business-\d{8}
应该足够了。您使用了不同的代码。代码中的\-d{8}
与-
和8d
s匹配。+/news/business-\d{8}
应该足够了。您使用了不同的代码。代码中的\-d{8}
与-
和8d
s匹配。