【问题标题】:Scrapy: how can I extract text with hyperlink togetherScrapy:如何将带有超链接的文本一起提取
【发布时间】:2017-06-14 20:37:24
【问题描述】:

我正在爬一个教授的webpage

在她的研究描述下,有两个超链接,分别是“TEDx UCL”和“这里”。

我使用像 '//div[@class="group"]//p/text()' 这样的 xpath 获得前 3 段。

'//div[@class="group"]/text()' 以获取带有一些换行符的最后一段。但是这些很容易清洗。

问题是最后一段只包含文本。超链接丢失。虽然我可以单独提取它们,但是将它们放回对应的位置很繁琐。

如何获取所有文本并保留超链接?

【问题讨论】:

    标签: python scrapy web-crawler


    【解决方案1】:

    您可以使用html2text

    sample = response.xpath("//div[@class="group"]//p/text()")
    converter = html2text.HTML2Text()
    converter.ignore_links = True
    converter.handle(sample)
    

    【讨论】:

      【解决方案2】:

      试试这个:

      '//div[@class="group"]/p//text()[normalize-space(.)]'
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2015-03-01
        • 1970-01-01
        • 2022-08-16
        • 1970-01-01
        • 2018-12-23
        • 1970-01-01
        • 2017-01-07
        • 1970-01-01
        相关资源
        最近更新 更多