You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用pywinos包执行run_cmd命令时出现两类报错如何解决?

报错原因及解决方案

第一类报错:TypeError: expected string or bytes-like object

  • 报错原因:pywinos底层依赖winrm库实现Windows命令执行能力,WinOSClient实例化时如果未显式传入host参数,该参数默认值为None。winrm初始化阶段会尝试用正则表达式匹配host格式,None不属于字符串/字节类型,直接触发类型错误。
  • 解决方案:实例化WinOSClient时必须显式传入host参数,本地执行填127.0.0.1,远程执行填目标机器的IP地址或域名即可。

第二类报错:winrm.exceptions.InvalidCredentialsError: auth method plaintext requires a username

  • 报错原因:winrm默认使用明文认证方式执行命令,无论本地还是远程调用,都需要提供合法的Windows系统用户名、密码作为认证凭证,缺少凭证就会触发该认证错误。
  • 解决方案:
    1. 实例化WinOSClient时补充传入有效用户名、密码参数,本地执行就填当前Windows系统的登录凭证,示例代码如下:
    from pywinos import WinOSClient
    tool = WinOSClient(
        host='127.0.0.1',
        username='你的Windows用户名',
        password='你的Windows登录密码',
        logger_enabled=False
    )
    response = tool.run_cmd(command='whoami')
    
    1. 若执行时报WinRM服务相关错误,需要先以管理员身份打开CMD,执行以下命令开启本地WinRM服务:
      winrm quickconfig -force

内容的提问来源于stack exchange,提问作者Mac

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.26 08:36:03