如何使用python硒识别此数值?

时间:2019-05-07 02:07:57

标签: python selenium selenium-webdriver selenium-chromedriver webautomation

因此,对于每一行,都有一个“ xxx Answers”元素。

如何提取它的数值,以便进行如下比较:

如果x> 50,那么等等。

2 个答案:

答案 0 :(得分:1)

这里是获取值的xpath。

//div[@class='u-text--gray-light-metadata']/a

Python代码应如下所示(每个名称具有多个答案元素1,因此您必须获取元素并进行迭代,但是在这里,我给出了如何获取第一个答案的示例)

text =  driver.find_element_by_xpath("(//div[@class='u-text--gray-light-metadata']/a)[1]").text
# extract the number of answers
answers = text.split(' ')[0]

答案 1 :(得分:0)

一个粗略的通用解决方案,应该抓住所有这些问题:

import re
import selenium

driver = webdriver.Firefox()
driver.get("http://example.com/") # your website here

anchors = driver.find_elements_by_tag_name('a')

matches = []
for anchor in anchors:
    match = re.fullmatch(r'(\d+) Answers?', anchor.text)
    if match:
        matches.append(match.group(1))

print(matches)