python-3.x 使用Selenium从表数据中的href提取文本

mm9b1k5b  于 2023-03-31  发布在  Python
关注(0)|答案(1)|浏览(94)

我有这样一张table:

<table style="display: none;">
  <tr>
    <td class='title'>
      <a href='/my/website.html'>This is some text</a>
    </td>
  </tr>
</table>

我试着调出“This is some text”。但是我只能调出链接。下面是我的代码:

title = driver.find_elements(By.XPATH, "//td[@class='title']//a[@href]")

for element in title:
    element_list.append([element.get_attribute("href"), element.text])

结果是一个包含链接的列表,但没有文本。我哪里错了?
有没有一种简单的方法来查看selenium对象具有哪些属性?

x6h2sr28

x6h2sr281#

你做得很对......有点。问题是,根据你发布的HTML,TABLE是不可见的,所以.text不能工作。

<table style="display: none;">
              ^^^^^^^^^^^^^

您可以使用.get_attribute()来抓取文本。将您的脚本更改为以下内容。

for element in title:
    element_list.append([element.get_attribute("href"), element.get_attribute("innerHTML"])

相关问题