我正在嘗試單擊下一個按鈕 (>),然后重復直到到達最后一頁。我嘗試從類似的問題中尋找解決方案,但我無法弄清楚出了什么問題/使它起作用。
這是我的代碼,謝謝!
from selenium import webdriver
from selenium.webdriver.common.by import By
from selenium.webdriver.support import expected_conditions as EC
from selenium.webdriver.support.ui import WebDriverWait as Wait
from selenium.webdriver.support.ui import WebDriverWait
from selenium.common.exceptions import TimeoutException
driver = webdriver.Chrome("C:/Users/krish/Desktop/chromedriver_win32/chromedriver.exe")
driver.get('https://www.cnbcindonesia.com/tag/pasar-modal')
wait = WebDriverWait(driver,30)
while True:
try:
element = wait.until(EC.element_to_be_clickable((By.XPATH, "//a[@class = 'icon icon-angle-right']/i")))
if (element != 0):
element.click()
except TimeoutException as ex:
break
uj5u.com熱心網友回復:
您的xpath外觀不正確,請嘗試以下操作
Xpath
//i[@class='icon icon-angle-right']
CSS 選擇器
.icon.icon-angle-right
uj5u.com熱心網友回復:
嘗試:
while True:
try:
element = wait.until(EC.element_to_be_clickable((By.XPATH, '//*[@]/..')))
if (element != 0):
element.click()
except TimeoutException as ex:
break
uj5u.com熱心網友回復:
你可以和劇作家一起輕松
from playwright.sync_api import sync_playwright
with sync_playwright() as p:
browser = p.webkit.launch(headless=False)
baseurl = "https://www.cnbcindonesia.com/tag/pasar-modal"
page = browser.new_page()
page.goto(baseurl)
next_page = page.wait_for_selector("//i[@class='icon icon-angle-right']")
next_page.click()
browser.close()
此外,如果您想分頁,您可以只更改 URL 引數。
轉到第 87 頁:https ://www.cnbcindonesia.com/tag/pasar-modal/87?kanal=&tipe=
uj5u.com熱心網友回復:
想通了,終于可以使用 execute_script() 方法
while True:
try:
time.sleep(2)
driver.execute_script("arguments[0].click();", WebDriverWait(driver, 20).until(EC.element_to_be_clickable((By.CSS_SELECTOR, ".icon.icon-angle-right"))))
except NoSuchElementException:
break
謝謝大家的答案
轉載請註明出處,本文鏈接:https://www.uj5u.com/ruanti/493896.html
標籤:Python 硒 硒网络驱动程序 网页抓取 硒铬驱动程序
上一篇:如何在c語言中跳過檔案的前兩行?
