簡體   English   中英

元素不可點擊硒python

[英]element not clickable selenium python

我正在嘗試運行一個python腳本,它將繼續單擊“加載更多”按鈕,直到消失。 我正在嘗試的代碼如下所示:

import csv
import time
import re
from bs4 import BeautifulSoup
from selenium.common.exceptions import NoSuchElementException
from selenium import webdriver
import requests
from selenium.webdriver.common.by import By
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC

page=requests.get('https://www.killerfeatures.com/mobile/brands').content
soup1=BeautifulSoup(page,"html5lib")
brndsbox=soup1.find_all("div",attrs={"class":"brndsbox"})
count=0
brand_link=[]
for each in brndsbox:
    x= each.find("span")
    j=str(x).split('=')[5].split('"><')[0].replace('"',"")
    brand_link+=["https://www.killerfeatures.com"+j]


chromedriver=r"D:\MOBILE_JUNE_22_2017\old_files_\price raja mobile\working\chromedriver.exe"
driver=webdriver.Chrome(chromedriver)
for url in brand_link:
    print url
    driver.get(url)
    track_count=0
    while True:
        try:

            element = WebDriverWait(driver, 20).until( EC.presence_of_element_located((By.ID, "loadMoreRecords"))   )
            element.click()
            print "click", track_count
            time.sleep(5)
            track_count+=1
        except NoSuchElementException:
            break

print "complete"

這里的問題是它正在顯示錯誤為selenium.common.exceptions.WebDriverException: Message: unknown error: Element is not clickable at point (636, 583)這是任何原因的原因。 我已經使用了一個顯式的wait直到元素可見。 之后,我也得到錯誤。 提前致謝!

使用JavascriptExecutor。 它將直接通過JS運行。 它應該工作。 我舉一個使用JavascriptExecutor單擊任何元素的示例

代碼應如下所示:-

element=driver.find_element_by_xpath('YOURXPATH') 
driver.execute_script("arguments[0].click();", element)

注意:-根據需要在上面的代碼中更改定位器

希望它能對您有所幫助:)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM