我用python编写了一个selenium脚本,当我使用Firefox
webdriver时,它运行得非常成功。但是,后来我尝试让它无头,所以用PhantomJS
webdriver替换了Firefox
。但是,同一个脚本不能与PhantomJS
webdriver一起运行。你知道吗
它成功地登录到站点,但是在脚本中找不到大多数XPath(这些是动态内容),尽管路径确实存在
例如:
def get_logged_in_session(redirect):
driver = webdriver.PhantomJS()
driver.get("https://app.abcd.com/id?redirectTo=" + redirect)
username = driver.find_element_by_xpath("//label[@for='Username']")
password = driver.find_element_by_xpath("//label[@for='Password']")
login_button = driver.find_element_by_xpath("//button[@id='login']")
username.send_keys("")
password.send_keys("")
login_button.send_keys(Keys.RETURN)
return driver
此函数成功运行。你知道吗
但在一个特定的账户里
root_directory += driver.find_element_by_xpath("//h1[@class='course-hero__title']").get_attribute("textContent")
names_of_directories = driver.find_elements_by_xpath("//li[@class='accordian__section']")
这两个函数成功运行并在Firefox
中获取元素,但在PhantomJS
中引发异常/返回空列表。你知道吗
我的问题是,我的脚本中需要做什么更改才能使用PhantomJS
。你知道吗
注意PhantomJS-2.1.1
已成功安装到我的计算机中。而且,我已经提供了足够的延迟,以便页面可以完全加载。所以,这不是一个拖延的问题。你知道吗
目前没有回答
相关问题 更多 >
编程相关推荐