我正在 python 中使用 selenium 来抓取网站。大多数页面都运行良好,但我似乎无法捕捉到一个异常(exception)。 html:
<div class="parablock">
<p>De Hoge Raad acht geen termen aanwezig voor een veroordeling in de proceskosten.<span class="linebreak1"> </span></p>
<p>
<span class="emphasis" style="font-weight:bold;">4 Beslissing</span> </p>
<p>De Hoge Raad verklaart het beroep in cassatie ongegrond.</p>
</div>
我所追求的是最后一段文字:“De Hoge Raad verklaart het beroep in cassatie ongegrond”。 问题是,有几个 div 具有 parablock 类。还有多个具有类重点的跨度。
其中只有一个被标记为“Beslissing”。然而,这并没有被设置为一个类或任何东西。有没有一种简单的方法来抓取与字符串“Beslissing”匹配的所需文本?
或者我是否必须修改整个页面,将其转换为字符串并使用正则表达式来获取“Beslissing”之后的文本?
最佳答案
尝试使用find_by_xpath('//p[span[contains(text(),"Beslissing")]]/following-sibling::p')
查找<p>
<p>
的同级元素其中包含 <span>
包含文本 "Beslissing"
关于python - 基于特定字符串的抓取 [python selenium],我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43341391/