【问题标题】:Selenium send_keys with no responseSelenium send_keys 没有响应
【发布时间】:2017-07-08 17:58:01
【问题描述】:

当我使用 PhantomJS 和 selenium 运行我的代码时,res 显示行为,但是在 send_keys 中,代码不会继续,只是停留,没有错误,没有任何答案,也没有保留。我只是想知道为什么.

res = re.findall(r'\<input id=\"([^\n]*)\" type=\"file\" style="font-size: 999px; opacity: 0; position: absolute; top: 0px; left: 0px; width: 100%; height: 100%;',pages)
dr = driver.find_element_by_id(res[0])
dr.send_keys('/Users/liangshengjun/Desktop/bin/2_0.jpg')

【问题讨论】:

  • 为什么使用正则表达式而不是css选择器或xpath?为您的input 元素分享HTML
  • 因为没学过css,路径是动态的,所以选择re.
  • 尝试dr = driver.find_element_by_css_selector('input[type="file"]'),然后是dr.send_keys('/Users/liangshengjun/Desktop/bin/2_0.jpg'),然后是dr.submit()
  • 非常感谢,让我学会了一种更好的寻找路径的方法。但是程序也没有反应只是黑...

标签: python html selenium phantomjs


【解决方案1】:

这是因为您只选择了文件,没有提交任何表单,也没有采取任何行动。因此,您需要单击一些提交按钮或使用您的文件路径发送 ENTER 键,如下所示:

from selenium.webdriver.common.keys import Keys
# your code here, then add this key on last step.
dr.send_keys('/Users/liangshengjun/Desktop/bin/2_0.jpg' + Keys.ENTER)

而且你真的不应该使用正则表达式来查找输入,你最好尝试 xpath 或者可能是 css 选择器。

在切换到无头模式(Google Chrome --headless 或 PhantomJS,如您的情况)之前,使用 Firefox 等图形浏览器进行调试是一种很好的方法。

【讨论】:

  • 谢谢。但我得到了提升:元素当前不可交互,可能无法操作","re​​quest":{"headers": ... \"/Users/liangshengjun/Desktop/bin/2_0.jpg\\ue007\", \"值\": [\"/\", \"U\", \"s\", \"e\", \"r\", \"s\", \"/\", \ "l\"、\"i\"、\"a\"、\"n\"、\"g\"、\"s\"、\"h\"、\"e\"、\"n \"、\"g\"、\"j\"、\"u\"、\"n\"、\"/\"、\"D\"、\"e\"、\"s\" , \"k\", \"t\", \"o\", \"p\", \"/\", \"b\", \"i\", \"n\", \ "/\"、\"2\"、\"_\"、\"0\"、\".\"、\"j\"、\"p\"、\"g\"、\"\ \ue007\"], \"id\": \":wdc:1499537747792\", \"sessionId\": \"7500f610-6409-11
  • 我也想知道消息,由 selenium 发送,从 serve 还是 selenium?
  • 这可能是您在输入字段中输入的值。或者它可能是众所周知的 PhantomJS 错误,请查看此线程:github.com/ariya/phantomjs/issues/11637。我真的建议您先尝试使用 Firefox,以检查与您的眼睛的互动。
  • 谢谢!我想在下一个案例或空闲时间尝试 Firefox。但我需要明天提交我的案子。所以我想,也许我需要在页面源中找到一些东西,也许一个 js 正在做某事。无论如何,非常感谢。
  • 如果对您有帮助,您可以接受答案。这样人们就可以更轻松地使用 Google 搜索了。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2022-01-27
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2017-01-09
  • 2013-03-25
相关资源
最近更新 更多