Python / Scrapy转到其他URL

因此,我正在使用scrapy进行一个小项目,并且对python和scrapy有点陌生。


我正在尝试在此URL上删除有关每个公司的信息。https://www.canadianlawlist.com


我创建一个表单请求并获取结果:https : //www.canadianlawlist.com/searchresult/?searchtype=firms&city=Montreal


现在,我想为每个结果都刮除名称/电话等基本数据。


但是链接完全变成了其他东西。


类似于https://www.canadianlawlist.com/listingdetail/company/zsa-legal-recruitment-673544/。


我试过拥有一个基本的URL:canadianlawlist.com,然后像这样附加href:


basicurl = "canadianlawlist.com/"

    products = response.xpath('//*[@class="searchresult_item_regular"]/a/@href').extract()

    for p in products:

        url = urljoin(response.url, p)

        yield scrapy.Request(url, callback=self.parse_firm_info)

但是我正在使用python 2并且可以使用urljoin(我认为)?


有什么想法可以继续吗?


HUH函数
浏览 156回答 2
2回答

陪伴而非守候

Scrapy具有response.urljoin()此任务:products = response.xpath('//*[@class="searchresult_item_regular"]/a/@href').extract()for p in products:    url = response.urljoin(p)    yield scrapy.Request(url, callback=self.parse_firm_info)
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Python