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

Python使用paramiko出现socket.gaierror: [Errno 11001]错误求助

排查与解决 socket.gaierror: [Errno 11001] getaddrinfo failed 错误

嘿,这个问题我之前帮同事排查过!你遇到的这个错误本质是域名解析失败,核心问题出在你定义的host变量上:

问题根源

Paramiko的Transport类接收的主机参数只需要纯主机名/IP地址,但你给的host = "sftp://sftp.xxxxx.com"带了sftp://这个协议前缀。系统会把整个字符串当作域名去解析,显然不存在叫sftp://sftp.xxxxx.com的主机,自然就触发了解析失败的错误。

修复方案

把host变量里的sftp://前缀去掉,改成纯主机名即可:

import sys
sys.path.append ('C:/Users/xxxxx/source/packages')
import paramiko

# 去掉sftp://前缀,保留纯主机名
host = "sftp.xxxxx.com"
port = 22
transport = paramiko.Transport((host, port))
password = "xxxx"
username = "xxxxx"
# 后续代码...

额外排查点(如果修复后仍报错)

  • 测试你的机器是否能正常解析这个域名:打开命令行执行ping sftp.xxxxx.com,看是否能得到对应的IP地址
  • 检查网络防火墙是否允许你的机器访问该SFTP服务器的22端口
  • 确认SFTP服务器的域名拼写完全正确,没有大小写或字符错误

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.21 07:44:39