Python Scrapy提取子级

阿古卡帕

我有以下情况:

<div class="question"> 
    <div class="post-layout">
        <div class="post-text">
            <p> Sample Question </p>
        </div>
    </div>
</div>

<div class="answer"> 
    <div class="post-layout">
        <div class="post-text">
            <p> Sample Answer </p>
        </div>
    </div>
</div>

我想question从类中分别提取的文本answer

我试过了:response.css('.post-text > p::text').extract()但这可以同时提取问题和答案。

我尝试过:response.css('.question > .post-text > p::text').extract()但是它什么也没有返回。

我也尝试过:response.xpath(".//div[@class='question']/div[@class='post-text']/p//text()").extract()但是它什么也没有返回。

我是Scrapy的新手,所以也许我做错了...任何帮助将不胜感激!

谢谢!

汤姆

你近了 >你的选择会要求你选择什么样的孩子。因为<p>不是它的直接子对象,<div class="answer">所以找不到它。您可以通过删除它来解决此问题

question = response.css(".question p::text").get()
answer = response.css(".answer p::text").get()

请注意我用get()的,而不是extract()仅仅因为这是现在做这个推荐的方式。

您第二次尝试不起作用,因为您缺少post-layout课程。例如,使用该方法的正确方法是

response.css('.question > .post-layout > .post-text > p::text')

xpath等同物

question = response.xpath('//div[@class="question"]//p/text()').get()
answer = response.xpath('//div[@class="answer"]//p/text()').get()

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

python scrapy从网站提取数据

来自分类Dev

python scrapy从网站提取数据

来自分类Dev

Scrapy 选择直接子级

来自分类Dev

如何提取(href,alt)对python scrapy

来自分类Dev

Python Scrapy无法从类中提取文本

来自分类Dev

使用python和scrapy从Web提取文本

来自分类Dev

使用python scrapy从网页中提取链接

来自分类Dev

无法从父包python导入子级

来自分类Dev

获取JSON对象python的子级

来自分类Dev

Python从父级调用扩展子方法

来自分类Dev

Python多重处理:处理父级中的子级错误

来自分类Dev

在python中提取子字符串

来自分类Dev

Scrapy / Python / XPath-如何从数据内部提取数据?

来自分类Dev

使用 Python/Scrapy 在 h1 中提取 p

来自分类Dev

Python:继承父类的方法而不是该类的子级

来自分类Dev

python日志记录-消息未显示在子级中

来自分类Dev

在子屏幕中显示父级django admin python

来自分类Dev

从父级的子文件夹导入Python

来自分类Dev

当父级在python中退出时,如何杀死子进程?

来自分类Dev

python日志记录-消息未显示在子级中

来自分类Dev

Python-打印第n级子列表

来自分类Dev

从第二级链接中提取数据,scrapy

来自分类Dev

Python如何在子级中重写类成员并从父级访问它?

来自分类Dev

Python:如何使用父级的isinstance来确定它是否是特定的子级

来自分类Dev

python链接结构-将子级插入节点A的父级也插入到节点A

来自分类Dev

Python与ElementTree在同一循环中获取XML的父级和子级值

来自分类Dev

Python如何在子级中重写类成员并从父级访问它?

来自分类Dev

使用Python和lxml检索XML父级和子级属性

来自分类Dev

Python多重处理:子级将变量发送回父级

Related 相关文章

热门标签

归档