Python使用scrapy抓取网站sitemap信息的方法
本文实例讲述了Python使用scrapy抓取网站sitemap信息的方法。分享给大家供大家参考。具体如下:
importre fromscrapy.spiderimportBaseSpider fromscrapyimportlog fromscrapy.utils.responseimportbody_or_str fromscrapy.httpimportRequest fromscrapy.selectorimportHtmlXPathSelector classSitemapSpider(BaseSpider): name="SitemapSpider" start_urls=["http://www.domain.com/sitemap.xml"] defparse(self,response): nodename='loc' text=body_or_str(response) r=re.compile(r"(<%s[\s>])(.*?)(</%s>)"%(nodename,nodename),re.DOTALL) formatchinr.finditer(text): url=match.group(2) yieldRequest(url,callback=self.parse_page) defparse_page(self,response): hxs=HtmlXPathSelector(response) #MockItem blah=Item() #Doallyourpageparsingandselectingtheelemtentsyouwant blash.divText=hxs.select('//div/text()').extract()[0] yieldblah
希望本文所述对大家的Python程序设计有所帮助。