当元素是 Python-Selenium 中的 link 时打印 url

Print url when element is a link in Python-Selenium

我正在使用 Python3 和 Selenium。下面的 xpath 指向一个 link。我想打印 URL。如果我写 print(link.text) 我只会得到 link 的显示文本部分。 例如:下面 link 中的 link.text 会在我想要 URL.

时给我“link 文本”

HTML:

<a href="url">link text</a>

代码试验:

path = f"/html/body/div/section[5]/div/div/div[1]/div[3]/div[{str(n)}]/div/div[1]/div/div[2]/div[1]/a"
link = driver.find_element_by_xpath(path)
print(link.url) 

您需要使用

link.get_attribute('href')

而不是

link.text

print(link.text) 会打印 text / textContent / innerHTML of the <a>

link text

如果您的用例是打印 href 属性的值,即 url 您可以使用以下解决方案:

print(link.get_attribute("href"))