【发布时间】:2019-01-14 19:56:27
【问题描述】:
我正在尝试让 Selenium 网络驱动程序(控制 Firefox)更新它登录的 Facebook 帐户的个人资料图片。 我使用的典型建议是查找文件输入和 send_keys 我的文件路径,这就是我得到的:
image.find_element_by_xpath("//input[contains(@title,'Choose a file to upload')]").send_keys(os.getcwd()+'test.png')
无论如何,这是我得到的错误:
Traceback(最近一次调用最后一次):
中的文件“C:/Users/maste/PycharmProjects/accountGenerator/accountGenerator.py”,第 136 行 image.find_element_by_xpath("//input[contains(@title,'选择要上传的文件')]").send_keys(os.getcwd()+'test.png')
文件“C:\Users\maste\Anaconda3\lib\site-packages\selenium\webdriver\remote\webelement.py”,第 479 行,在 send_keys “值”:keys_to_typing(value)})
_execute 中的文件“C:\Users\maste\Anaconda3\lib\site-packages\selenium\webdriver\remote\webelement.py”,第 628 行 return self._parent.execute(command, params)
执行中的文件“C:\Users\maste\Anaconda3\lib\site-packages\selenium\webdriver\remote\webdriver.py”,第 320 行 self.error_handler.check_response(响应)
文件“C:\Users\maste\Anaconda3\lib\site-packages\selenium\webdriver\remote\errorhandler.py”,第 242 行,在 check_response 引发异常类(消息、屏幕、堆栈跟踪)
selenium.common.exceptions.ElementNotInteractableException:消息:元素 > 无法通过键盘访问
那个 是<input id="js_h" class="_n _5f0v" type="file">,我在HTML 的任何地方都找不到它。有人有想法吗?
【问题讨论】:
-
Facebook 不允许您抓取它们。使用 API,或者如果在 API 中无法执行,请不要执行。
标签: javascript python facebook selenium-webdriver dom-events