我想使用Python Selenium查找并访问页面上的所有链接。我得到以下错误。
追踪(最近一次通话(:文件";C: \Users\Acer\PycharmProjects\selenium rpa\main.py";,第24行,inprint(elem.get_attribute("href&"((AttributeError:"str"对象没有属性"get_attribute"。您的意思是:'getattribute'吗?
我的代码:
from selenium import webdriver
from datetime import datetime
import requests, urllib3
from selenium.webdriver.common.by import By
from selenium.webdriver.common.keys import Keys
from selenium.webdriver.chrome.service import Service
PATH = Service("C:chromedriver.exe")
url = "http://localhost/rpa_anomaly/test.php"
browser = webdriver.Chrome(service=PATH)
browser.get(url)
elems = browser.find_element(By.XPATH, "//a[@href]")
for elem in elems:
print(elem.get_attribute("href"))
这里也有同样的问题,但我的selenium版本更新了。所以我不能像下面那样使用它
elems = driver.find_elements_by_xpath("//a[@href]")
for elem in elems:
print(elem.get_attribute("href"))
在python 中使用selenium获取所有href链接
您可以尝试使用标记名的常规方法
from selenium import webdriver
from webdriver_manager.microsoft import EdgeChromiumDriverManager
driver = webdriver.Edge(EdgeChromiumDriverManager().install())
driver.get("http://localhost/rpa_anomaly/test.php")
# identify elements with tagname <a>
lnks = driver.find_elements_by_tag_name("a")
# traverse list
for lnk in lnks:
print(lnk.get_attribute("href"))
driver.quit()