国产成人精品亚洲777人妖,欧美日韩精品一区视频,最新亚洲国产,国产乱码精品一区二区亚洲

您的位置:首頁技術文章
文章詳情頁

python - scrapy url去重

瀏覽:149日期:2022-08-24 16:35:16

問題描述

請問scrapy是url自動去重的嗎?比如下面這段代碼,為什么運行時start_urls里面的重復url會重復爬取了?

class TestSpider(scrapy.Spider): name = 'test' allowed_domains = ['baidu.com'] start_urls = [’http://baike.baidu.com/fenlei/%E5%A8%B1%E4%B9%90%E4%BA%BA%E7%89%A9’, ’http://baike.baidu.com/fenlei/%E5%A8%B1%E4%B9%90%E4%BA%BA%E7%89%A9’, ’http://baike.baidu.com/fenlei/%E5%A8%B1%E4%B9%90%E4%BA%BA%E7%89%A9’,] def parse(self, response):for sel in response.xpath(’//p[@class='grid-list grid-list-spot']/ul/li’): item = TestspiderItem() item[’title’] = sel.xpath(’p[@class='list']/a/text()’)[0].extract() item[’link’] = sel.xpath(’p[@class='list']/a/@href’)[0].extract() yield item

問題解答

回答1:

建一個Url管理器,就不會重復抓取了

回答2:

知道了,改成這樣就可以了。

def start_requests(self):

yield scrapy.Request(’http://baike.baidu.com/fenlei/%E5%A8%B1%E4%B9%90%E4%BA%BA%E7%89%A9’, self.parse)yield scrapy.Request(’http://baike.baidu.com/fenlei/%E5%A8%B1%E4%B9%90%E4%BA%BA%E7%89%A9’, self.parse)yield scrapy.Request(’http://baike.baidu.com/fenlei/%E5%A8%B1%E4%B9%90%E4%BA%BA%E7%89%A9’, self.parse)

標簽: Python 編程
相關文章:
主站蜘蛛池模板: 宁城县| 拉萨市| 同德县| 洪湖市| 枝江市| 宜昌市| 会昌县| 永登县| 蕲春县| 克拉玛依市| 抚州市| 盈江县| 武平县| 大新县| 济源市| 东乌珠穆沁旗| 天峻县| 蒙城县| 阳原县| 龙岩市| 腾冲县| 灵寿县| 洪泽县| 团风县| 阿坝县| 托里县| 广宗县| 普陀区| 五台县| 中阳县| 子洲县| 米泉市| 南溪县| 来宾市| 博野县| 朝阳县| 巧家县| 乌审旗| 蒙阴县| 尖扎县| 安泽县|