当前位置: 首页 > 知识库问答 >
问题:

Python selenium webdrive无法上载文件,出现“未知命令”异常

唐增
2023-03-14

我尝试在Facebook Messager上上传一个图像/文件,其示例URL为https://www.facebook.com/messages/t/471646182511990(如果你想尝试,你需要在Chrome浏览器上打开Facebook Messager并获得有效的URL)。但它失败了,出现了“未知命令”异常。

我搜索但找不到任何合适的答案。一个线程“https://stackoverflow.com/questions/63272928/selenium-webdriver-python-cant-upload-file-send-keys-is-throws-elementnotinte”很近,但这不是同一个问题。

版本:

  1. Python 3.9

代码:

def sendMedia(mediaFile):
    filePath="file.jpg")
    try:
        fileInputBox = driver.find_element_by_xpath("//input[@type='file']")
    except
        return False
    fileInputBox.send_keys(filePath)
    sleep(randint(1,2))
    fileInputBox.send_keys(Keys.ENTER)
    sleep(randint(5, 6))
    return True

问题:此行“fileInputBox.send\u keys(filePath)”返回以下错误:

回溯(最近一次调用):文件“D:\Workspace\Property\Facebook\venv\lib\site packages\selenium\webdriver\remote\webelement.py”,第785行,在上传提升e

文件"D:\Workspace\Property\Facebook\venv\lib\site-pack\selenium\webDrive\Remote\webelement.py",第776行,_upload返回自己。_execute(命令UPLOAD_FILE,{'file': content})['value']

文件"D:\Workspace\Property\Facebook\venv\lib\site-pack\selenium\webdrim\Remote\webelement.py",第710行,_execute返回自己。_parent.execute(命令、参数

文件"D:\Workspace\Property\Facebook\venv\lib\site-pack\selenium\webDrive\Remote\webdriver.py",第424行,正在执行self.error_handler.check_response(响应)

文件"D:\Workspace\Property\Facebook\venv\lib\site-pack\selenium\webDrive\Remote\errorhandler.py",第247行,check_response提出exception_class(消息、屏幕、堆栈跟踪)

硒。常见的例外情况。WebDriverException:消息:未知命令:未知命令:session/83896857b2899e4a7c53c4a8dca78976/se/file

堆栈跟踪:

回溯跟踪:

Ordinal0 [0x00C16903+2517251]

Ordinal0 [0x00BAF8E1+2095329]

Ordinal0 [0x00AB2848+1058888]

Ordinal0 [0x00AF429E+1327774]

Ordinal0 [0x00AF4089+1327241]

Ordinal0 [0x00A950AF+938159]

Ordinal0 [0x00A955C6+939462]

Ordinal0 [0x00A958F1+940273]

GetHandleVerifier [0x00DA5904+1577972]

GetHandleVerifier [0x00E50B97+2279047]

GetHandleVerifier [0x00CA6D09+534521]

GetHandleVerifier [0x00CA5DB9+530601]

Ordinal0 [0x00BB4FF9+2117625]

Ordinal0 [0x00A94E40+937536]

Ordinal0 [0x00A94848+936008]

GetHandleVerifier [0x00E78B5C+2442828]

BaseThreadInitThunk [0x7732FA29+25]

RtlGetAppContainerNamedObjectPath [0x775C7A9E+286]

RtlGetAppContainerNamedObjectPath [0x775C7A6E+238]

共有2个答案

陶法
2023-03-14

我对Selenium 4.1.0和Python 3.9也有同样的问题。我做了一些解决方法,但我不喜欢它。

在remote\u connection中的selenium site package中。py文件我已将第218行更改为:命令。上载文件:('POST',“/session/$sessionId/se/FILE”),到:命令。UPLOAD\u文件:('POST',“/session/$sessionId/FILE”),

现在它正在工作,但正如我所说,我想它不应该是这样的。

吴建中
2023-03-14

我想可能是因为我使用了远程web驱动程序。如果web驱动程序不是远程的,则相同的代码没有问题。

现在我的问题是,为什么远程Web驱动程序不支持send_keys上传文件?有人能和我分享一些使用远程Web驱动程序(chrome或Firefox)并可以使用send_keys上传文件的示例代码吗?非常感谢。

 类似资料:
  • 我的命令有时会抛出ContextException,当你解除对未被禁止的人的绑定时。我想用一个块来捕捉它,通知用户他们试图解锁的人没有被禁止。这就是我尝试的: 但是行只显示了。

  • 所以我尝试使用python为我的不和谐机器人做这个简单的投票函数: 问题是,当我试图调用函数时,它会给我一个错误。错误:忽略命令无中的异常:discord.ext.commands.errors.命令没有找到:命令“makePoll”没有找到。 编辑:试图命名client.commandmakePoll,但知道它给我这个错误:忽略命令makePoll中的异常:Traceback(最近一次调用最后一

  • 嗨,我正在尝试使用Django实现elasticsearch。我正在学习本教程 https://www.codementor.io/samueljames/using-django-with-elasticsearch-logstash-and-kibana-elk-stack-9L4FWX138 我得到了, 键入“manage.py help”了解用法信息。 尝试使用cmd创建索引时 请帮忙

  • 我在我的网站上使用Moxiemager,到目前为止它工作得很好 它可以上传jpg/gif/png等 但是我在上传jpeg图像时遇到了麻烦 我用这个图像来测试它http://upload.wikimedia.org/wikipedia/commons/8/86/Cactus_Flower_(简单宏)。jpeg 当我尝试上传它时,会出现一个错误,说"没有指定输入文件" 这就是我编写代码的方式 我也试过

  • 我正试图使用在集群中运行我的JAR,但过了一段时间后出现异常。失败之前的最后一个是。我检查了所有的安全组,成功地执行了,但仍然得到错误。 ./bin/spark提交——类别MyMainClass——主纱线簇/tmp/myjar-1.0。jar myjar参数 ./bin/hadoop fs-ls /user/henrique/.sparkStaging/

  • curl-i-x post-f“imageFile=./image.jpg”http://myserver.com:8080/admin/02d0828864100000000b28c545b728f4/icon/add-v POST/ADMIN/02D0828864100000000B28C545B728F4/ICON/ADD HTTP/1.1用户代理:curl/7.30.0主机:MyServe