python - 基于特定字符串的抓取 [python selenium]

标签 python selenium web-scraping

我正在 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/

相关文章:

python - 如何覆盖 "set"内置?

javascript - 使用 Selenium Webdriver 获取定期更新的内容

java - 在新窗口中查找 xpath 位置,单击后打开。使用 java 和 selenium

javascript - 运行 Nightwatch.js 测试时,如何获取当前运行测试的浏览器的名称?

Python Selenium 网页抓取 - 隐藏文本/Javascript?

python-2.7 - Python。属性错误 : 'NoneType' object has no attribute 'startswith'

json - Python 和 BeautifulSoup : How to convert JSON into CSV

python - 如何在 keras/tensorflow 中定义秩大于 4 的张量上的 2D 卷积

python - 向量化一个极其缓慢的 groupBy

python - 使用 --target 安装的包的 pip freeze