【问题标题】:Selenium not working except launching browser and open the pageSelenium 除了启动浏览器并打开页面外无法正常工作
【发布时间】:2018-12-30 22:19:05
【问题描述】:

我发现我的 selenium 无法执行代码,只能启动 Chrome。

我不知道为什么我的硒不起作用。它只是使用 URL 打开浏览器 (Chrome),然后什么都不做,甚至最大化窗口,甚至不插入表单。

我的代码有什么问题吗:

from selenium import webdriver
from selenium.webdriver.common.keys import Keys
import re, time, csv

driver = webdriver.Chrome("C:\\Users\\Ashraf%20Misran\\Installer\\chromedriver.exe")

driver.get("file:///C:/Users/Ashraf%20Misran/Devs/project-html/learning-html/selenium sandbox.html")
driver.maximize_window()
username = driver.find_element_by_xpath(".//input")
username.click()
username.send_keys("000200020002")

我打开的页面代码如下:

<!DOCTYPE html>
<html>
  <head>
    <title>Sandbox</title>
  </head>
  <body>
    <form>
      <input type="text" name="username">
    </form>
  </body>
</html>

【问题讨论】:

  • 您是否尝试过类似的方法,例如获取 google.com?
  • 尝试从文件名中删除空格selenium sandbox.html -> selenium_sandbox.html
  • 页面已成功打开,如问题中所述...但未执行其他命令。
  • 这通常意味着驱动程序和浏览器版本不兼容。确保完全更新浏览器,下载当前版本的 Selenium 和当前浏览器驱动程序,然后重试。
  • 发布您要打开的页面,这可能会有所帮助

标签: python selenium selenium-webdriver


【解决方案1】:

我认为问题出在网页上,您正在尝试打开。建议先尝试简单的测试,例如打开 Google 页面,在搜索字段中输入内容。有了这个,您将能够验证您是否正确实施了驱动程序初始化。

更新:尝试使用这个 css 选择器:input[name='username'],如果页面加载正确,那么你的 web 元素选择器有问题。

【讨论】:

  • 页面已成功打开,如问题中所述...但未执行其他命令。
  • 我更新了我的答案。看来,您的 xpath 不正确。我写了一个css选择器的例子,它应该可以工作。此外,控制台中是否显示任何消息/错误?我认为应该是什么,有什么可以帮助解决问题的。
【解决方案2】:

我认为,使用相对 xpath 定位器存在问题。请试试那个:

username = driver.findElement(By.xpath("//input"))

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2021-06-10
    • 2018-10-02
    • 2010-11-24
    • 1970-01-01
    • 2017-03-04
    • 2018-02-01
    • 1970-01-01
    相关资源
    最近更新 更多