所以我有一些像这样的HTML
<div class="content">
<div class="infobox">
<p> text </p>
<p> more text </p>
</div>
<p> text again </p>
<p> even more text </p>
</div>
我正在使用这个选择器'.content p::text'
我认为这只会让我直接的孩子,所以我希望它再次提取&#34;文本&#34;和更多的文字&#34;但它也从另一个div中的段落中获取文本,我怎样才能防止这种情况发生,我只想要来自div的直接子节点的文本与类.content
答案 0 :(得分:2)
Scrapy使用一组扩展的CSS selectors和XPath selectors。在您的情况下,您正在使用CSS选择器。您想要的CSS关系选择器是>
表示父/子关系,如:.content > p::text
。 Scrapy的选择器在标题为&#34; Selectors&#34;在其文档中。
答案 1 :(得分:1)
获取孩子:div&gt; p(文字,更多文字) 在你的情况下得到你需要的东西:div + p