gpt4 book ai didi

python - 识别从 Google Scholar 检索 href 时出现的问题

转载 作者:行者123 更新时间:2023-12-01 07:38:10 24 4
gpt4 key购买 nike

从 Google Scholar 抓取链接和文章名称时遇到问题。我不确定问题是否出在我的代码或我用来检索数据的 xpath 上,或者可能两者都有?

过去几个小时我已经尝试调试/咨询其他 stackoverflow 查询,但没有成功。

import scrapy
from scrapyproj.items import ScrapyProjItem

class scholarScrape(scrapy.Spider):

name = "scholarScraper"
allowed_domains = "scholar.google.com"
start_urls=["https://scholar.google.com/scholar?hl=en&oe=ASCII&as_sdt=0%2C44&q=rare+disease+discovery&btnG="]

def parse(self,response):
item = ScrapyProjItem()
item['hyperlink'] = item.xpath("//h3[class=gs_rt]/a/@href").extract()
item['name'] = item.xpath("//div[@class='gs_rt']/h3").extract()
yield item

我收到的错误消息是:“AttributeError: xpath”,所以我相信问题出在我用来尝试检索数据的路径上,但我也可能弄错了?

最佳答案

添加我的评论作为答案,因为它解决了问题:

问题出在 scrapyproj.items.ScrapyProjItem 对象上:它们没有 xpath 属性。这是官方的 scrapy 类吗?我认为您的意思是在 response 上调用 xpath:

item['hyperlink'] = response.xpath("//h3[class=gs_rt]/a/@href").extract()
item['name'] = response.xpath("//div[@class='gs_rt']/h3").extract()

此外,第一个路径表达式可能需要在属性值“gs_rt”周围加上一组引号:

item['hyperlink'] = response.xpath("//h3[class='gs_rt']/a/@href").extract()

除此之外,XPath 表达式也很好。

关于python - 识别从 Google Scholar 检索 href 时出现的问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56874770/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com