我的Selenium腳本卡在driver.get("url")后,沒有前進,后來出錯了。我使用下面的代碼,執行后暫停了很久,我已經嘗試了IE瀏覽器的高級設定中的所有選項
from selenium import webdriver
from bs4 import BeautifulSoup
import time
from tqdm import tqdm
email='XXXX'/span>
password='XXXX'/span>
options = webdriver.IeOptions()
options.ignore_protected_mode_settings=True
driver = webdriver.Ie('C:Program Files (x86)selenium-)
3.141.0seleniumwebdriverieIEdriverServer.exe')
driver.get('https://s2fs.axisbank.com/EFTClient/Account/Login.htm')
email_box = driver.find_element_by_name('username')
email_box.send_keys(email)
pass_box = driver.find_element_by_name('password')
pass_box.send_keys(password)
submit_button = driver.find_element_by_id('loginSubmit')
submit_button.click()
time.sleep(3)
File2393= driver.find_element_by_link_text('Checkbox For Item 919020028802393.csv'/span>)
File2393.click()
time.sleep(1)
File3303= driver.find_element_by_link_text('Checkbox For Item 920020034873303.csv')
File3303.click()
time.sleep(1)
download = driver.find_element_by_class('icomoon icon-download2 toolbar-button' )
download.click()
print("檔案已被下載")
uj5u.com熱心網友回復:
你在訪問頁面上的第一個元素之前缺少一個等待/延遲。 你可以簡單地在那里添加一個睡眠,就像這樣:
driver.get('https://s2fs.axisbank.com/EFTClient/Account/Login.htm')
time.sleep(10)
email_box = driver.find_element_by_name('username')
email_box.send_keys(email)
但最好是使用顯式等待
uj5u.com熱心網友回復:好吧,這個URL :-
https://s2fs.axisbank.com/EFTClient/Account/Login.htm
在我的瀏覽器中完全沒有加載,但如果它對你有效,那么你可以嘗試使用下面的顯式等待:
在我的瀏覽器中完全沒有加載。
options = webdriver.IeOptions()
options.ignore_protected_mode_settings = True
driver = webdriver.Ie('C:Program Files (x86)selenium-3.141.0seleniumwebdriverieIEdriverServer.exe' )
driver.maximum_window()
driver.implicitly_wait(30)
driver.get("https://s2fs.axisbank.com/EFTClient/Account/Login.htm")
wait = WebDriverWait(driver, 10)
email_box = wait.until(EC.element_to_be_clickable((By.NAME, "username") )
email_box.send_keys('email')
這些將是imports :
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.common.by import By
from selenium.webdriver.support import expected_conditions as EC
uj5u.com熱心網友回復:
我認為,該網站是無法到達的,你可以嘗試使用正確的URL來訪問該頁面,
訪問元素。
訪問該元素,你可以使用explicitWait
email_box = WebDriverWait(driver,10).until(EC.visibility_of_element_located((By.XPATH,"Element_XPATH"))
email_box.send_Keys("UserName")
import
from selenium.webdriver.common.by import By
from selenium.webdriver.support import expected_conditions as EC
from selenium.webdriver.support.wait import WebDriverWait
轉載請註明出處,本文鏈接:https://www.uj5u.com/shujuku/320202.html
標籤:
