【问题标题】:Selenium -xpath creatingSelenium -xpath 创建
【发布时间】:2022-01-02 11:50:54
【问题描述】:
我正在努力寻找“下一步”按钮的 xpath,以便自动执行抓取过程...
以防万一它是 rel = "next" 一个。
driver = webdriver.Safari()
driver.get('https://autoplius.lt/skelbimai/naudoti-automobiliai?make_id=43&model_id=186&make_date_from=1999&make_date_to=2005')
cookie = driver.find_element_by_xpath('//*[@id="onetrust-accept-btn-handler"]')
cookie.click()
Next = driver.find_element_by_xpath('//li[text()="Kitas"]/a')
Next.click()
【问题讨论】:
标签:
python
selenium
web-scraping
xpath
【解决方案1】:
您应该能够右键单击检查工具中的元素。右键单击后,将鼠标悬停在复制上,然后单击“复制 XPath”。我附上了这个过程的截图。告诉我进展如何!
Copy XPath
【解决方案2】:
xapth //li[text()="Kitas"]/a 没有突出显示 DOM 中的任何元素。 You can refer this link to find unique locators.
下一步按钮可以使用下面的定位器。
Xpath:
//div[@class='page-navigation-container']//a[@class='next']
CSS 选择器:
div.page-navigation-container a.next
# Imports Required for Explicit wait
from selenium.webdriver.common.by import By
from selenium.webdriver.support.wait import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC
driver.get("https://autoplius.lt/skelbimai/naudoti-automobiliai?make_id=43&model_id=186&make_date_from=1999&make_date_to=2005")
wait = WebDriverWait(driver,30)
wait.until(EC.element_to_be_clickable((By.ID,"onetrust-accept-btn-handler"))).click()
next_button = driver.find_element(By.XPATH,"//div[@class='page-navigation-container']//a[@class='next']")
next_button.click()