我试图只选择不在 div 元素内的文本。在本例中,我想排除类为 bbCodeBlock
的 div。我怎样才能做到这一点?这个想法是排除引用。
<li id="post-6062713">
<div class="uix_message ">
<div class="messageInfo">
<div class="messageContent">
<article>
<blockquote class="messageText SelectQuoteContainer">
<div class="bbCodeBlock bbCodeQuote">
<aside>
<div class="attribution type">user said:
<a href="#" class="AttributionLink">↑</a>
</div>
<blockquote class="quoteContainer">
<div class="quote">text to ignore</div>
</blockquote>
</aside>
</div>
text to change color
<br>
<br>
<br>
<br>
<div class="bbCodeBlock bbCodeQuote">
<aside>
<div class="attribution type">user said:
<a href="#" class="AttributionLink">↑</a>
</div>
<blockquote class="quoteContainer">
<div class="quote">text to ignore</div>
</blockquote>
</aside>
</div>
text to change color
<div class="messageTextEndMarker"> </div>
</blockquote>
</article>
</div>
</div>
</div>
</li>
这是一个用 scrappy 复制的基本演示,因为我需要排除引号,所以我正在寻找一个单行选择器来应用于类似
'text': quote.css('article blockquote').extract()
最佳答案
评论后编辑:
我刚刚意识到您想要影响的内容不在内部 div
, 但与 div
处于同一级别与类 .bbCodeBlock
,即 blockquote
的直接内容元素。
因此您需要使用两个选择器/规则,一个用于设置 blockquote
的颜色,其他排除那些 child div
blockquote
的元素其中有 .bbCodeBlock
类:
article blockquote {
color: red;
}
article blockquote div:not(.bbCodeBlock) {
color: initial;
}
<li id="post-6062713">
<div class="uix_message ">
<div class="messageInfo">
<div class="messageContent">
<article>
<blockquote class="messageText SelectQuoteContainer">
<div class="bbCodeBlock bbCodeQuote">
<aside>
<div class="attribution type">user said:
<a href="#" class="AttributionLink">↑</a>
</div>
<blockquote class="quoteContainer">
<div class="quote">text to ignore</div>
</blockquote>
</aside>
</div>
text to change color
<br>
<br>
<br>
<br>
<div class="bbCodeBlock bbCodeQuote">
<aside>
<div class="attribution type">user said:
<a href="#" class="AttributionLink">↑</a>
</div>
<blockquote class="quoteContainer">
<div class="quote">text to ignore</div>
</blockquote>
</aside>
</div>
text to change color
<div class="messageTextEndMarker"> </div>
</blockquote>
</article>
</div>
</div>
</div>
</li>
关于python - 从 css 选择器中排除 div,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53127195/