【问题标题】:Extract specific value from HTML using scrapy and css使用 scrapy 和 css 从 HTML 中提取特定值
【发布时间】:2024-05-02 04:05:02
【问题描述】:

我有以下 HTML 代码:

<div class="sites-split">
    <ul>
        <li><a href="http://www.page1.com/" target="_blank">text 1</a></li>
        <li><a href="http://www.page2.com/" target="_blank">text 2</a></li>
    </ul>
    <ul>
        <li><a href="http://www.page3.com/" target="_blank">text 3</a></li>
        <li><a href="http://www.page4.com/" target="_blank">text 4</a></li>
    </ul>
</div>

我想提取链接和与该链接关联的文本,我设法通过以下方式获取链接:

response.css("div.sites-split a::attr(href)").getall()

但我不知道如何获取文本,我尝试了:

response.css("div.sites-split a::attr(target)").getall()

但我得到的只是:

['_blank',
 '_blank',
 '_blank',
 '_blank']

【问题讨论】:

    标签: html css python-3.x web-scraping scrapy


    【解决方案1】:

    您正在提取另一个属性,但您需要文本。试试response.css("div.sites-split a::text").getall()

    【讨论】: