如何通过python

时间:2018-12-22 13:40:57

标签: python selenium

我正在尝试在python中使用硒访问多个标签的文本。

标签不具有idclass之类的属性;他们有一个名为itemprop的属性。

例如,有多个此类标签:

<p itemprop="articleBody">
London's Gatwick Airport ........</p>

我不能使用“按标签名称选择元素”,因为有些标签“ p”具有不希望包含的不同属性。

我正在使用以下代码选择这些元素:

elements = driver.find_element(By.CSS_SELECTOR, """p[itemprop='articleBody’]""")

但是它会引发错误-......

  

NoSuchElementException:消息:没有这样的元素:无法找到元素:{“ method”:“ css选择器”,“ selector”:“ p [itemprop ='articleBody']”}

我该如何解决?

1 个答案:

答案 0 :(得分:0)

选择器中有智能引号,将find_elements*s结合使用可获取多个元素。

elements = driver.find_elements(By.CSS_SELECTOR, 'p[itemprop="articleBody"]')
# Or
elements = driver.find_elements_by_css_selector('p[itemprop="articleBody"]')