我已经使用Selenium在Python中创建了简单的基本自动化脚本。 收到意外的异常。
文件:-
ListView
错误日志:-
index = cashedPositionInPixels / itemExtent
任何建议将不胜感激。 谢谢...
答案 0 :(得分:0)
而不是chrome应用程序,请尝试提供chrome驱动程序 该网站上的更多信息:https://sites.google.com/a/chromium.org/chromedriver/getting-started
示例代码:
import time
from selenium import webdriver
driver = webdriver.Chrome('/path/to/chromedriver') # Optional argument, if not specified will search path.
driver.get('http://www.google.com/');
time.sleep(5) # Let the user actually see something!
search_box = driver.find_element_by_name('q')
search_box.send_keys('ChromeDriver')
search_box.submit()
time.sleep(5) # Let the user actually see something!
driver.quit()
在此站点的“下载”部分下为您的平台下载ChromeDriver二进制文件 下载参考链接:chrome driver
答案 1 :(得分:0)
此代码应该可以工作(最好将firefox用于硒):
from selenium import webdriver
from selenium.webdriver.common.desired_capabilities import DesiredCapabilities
from selenium.webdriver.common.keys import Keys
from bs4 import BeautifulSoup
# noinspection PyUnresolvedReferences
import wget
DesiredCapabilities.PHANTOMJS[
"phantomjs.page.settings.userAgent"
] = "Mozilla/5.0 (Windows NT 6.1; Win64; x64; rv:16.0) Gecko/20121026 Firefox/16.0"
if browser == "firefox":
driver = webdriver.Firefox()
else:
driver = webdriver.PhantomJS(
CFG_phantomjs
) # r"D:/_devs/webserver/phantomjs-1.9.8/phantomjs.exe"
driver.get("https://tourwebsite")
username = driver.find_element_by_id("login_field")
password = driver.find_element_by_id("password")
username.clear()
答案 2 :(得分:0)
代码中的问题是您正在传递chrome可执行文件路径,而不是将该路径传递给另一个可执行文件chromedriver。
可以根据您的Chrome版本从here下载适当版本的chromedriver。
有关更多信息,您可以参考chromedriver文档here。 您的最终代码应类似于:
from selenium import webdriver
path = 'C:/Users/Avinash/Downloads/chromedriver.exe'
driver = webdriver.Chrome(path)
driver.get('http://www.google.com/');
#..here what ever you want to do with page here
driver.quit()