4

我有以下 html:

<p class="attrs"><span>foo:</span> <strong>foo</strong></p>
<p class="attrs"><span>bar:</span> <strong>bar</strong></p>
<p class="attrs"><span>foo2:</span> <strong></strong></p>
<p class="attrs"><span>description:</span> <strong>description body</strong></p>
<p class="attrs"><span>another foo:</span> <strong>foooo</strong></p>

我想使用 splinter 获取描述主体。我设法获得了p使用清单

browser.find_by_css("p.attrs")
4

3 回答 3

8
xpath = '//p[@class="attrs"]/span[text()="description:"]/following-sibling::strong'
description = browser.find_by_xpath(xpath).first.text
于 2014-02-26T05:36:55.953 回答
2

您能否使用 find_by_tag 获取描述?

按标签查找

browser.find_by_tag('span')

然后遍历所有'span'标签并寻找'description'的值。我在这里使用了文档

于 2014-02-15T20:21:18.847 回答
-1

如果您想使用 selenium 库尝试不同的方法,您可以使用此代码来完成:

import selenium
from selenium import webdriver
driver = webdriver.Chrome('PATH_LOCATION_TO_CHROME_DRIVER') 
driver.find_elements_by_class_name("attrs")

希望这可以帮助!将 PATH_LOCATION_TO_CHROME_DRIVER --- 替换为您的 chrome 驱动程序的位置,如果您用谷歌搜索它应该是第一个或第二个下载链接,然后将该下载放在 Python 的项目文件夹中。

于 2019-09-01T05:59:47.013 回答