为了账号安全,请及时绑定邮箱和手机立即绑定

带有 Scrapy 和 Python 的 XPath,无法使 XPath 正常工作

带有 Scrapy 和 Python 的 XPath,无法使 XPath 正常工作

四季花海 2021-07-09 14:39:26
过去一周我一直在使用以下教程使用 python 和 scrapy:https ://realpython.com/web-scraping-with-scrapy-and-mongodb/本教程的作用是通过使用 scrapy 网络爬虫抓取 stackoverflow 上的热门问题及其 url,然后将其存储到 mongoDB 数据库和集合中。我正在尝试调整教程中所做的工作,将多个项目抓取并存储到同一个 mongoDB 数据库的多个集合中,然后以 CSV 格式导出,我已经想出了如何做大部分工作,但我使用scrapy在网页上搜索指定项目的“xpaths”有问题,更具体地说,我已经想出了如何将pipleline处理到mongodb和存储多个集合以及更改集合名称基于正在抓取的项目的名称,但我无法让“蜘蛛”专门针对 xpath 工作,或者据我所知,问题在于 xpath 错误。我之前没有使用过scrapy,我已经做了几天的研究,试图弄清楚如何做xpath,但我似乎无法让它工作。问题标题和网址的蜘蛛按预期工作:from scrapy import Spiderfrom scrapy.selector import Selectorfrom stack.items import QuestionItemclass QuestionSpider(Spider):    name = "questions"    allowed_domains = ["stackoverflow.com"]    start_urls = [        "http://stackoverflow.com/questions?pagesize=50&sort=newest",    ]    def parse(self, response):        questions =     Selector(response).xpath('//div[@class="summary"]/h3')        for question in questions:            item = QuestionItem()            item['title'] = question.xpath(                'a[@class="question-hyperlink"]/text()').extract()[0]            item['url'] = question.xpath(                'a[@class="question-hyperlink"]/@href').extract()[0]            yield item     
查看完整描述

1 回答

  • 1 回答
  • 0 关注
  • 229 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信