使用poplib获取邮件时出错

0 投票
1 回答
1528 浏览
提问于 2025-04-16 09:41

我正在用poplib从POP3服务器获取邮件。

但是出现了这个错误:

Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "C:\Python26\lib\site-packages\myutils.py", line 251, in dxDown
    m=poplib.POP3('pop3.126.com')
  File "C:\Python26\lib\poplib.py", line 83, in __init__
    self.sock = socket.create_connection((host, port), timeout)
  File "C:\Python26\lib\socket.py", line 500, in create_connection
    for res in getaddrinfo(host, port, 0, SOCK_STREAM):
socket.gaierror: [Errno 11004] getaddrinfo failed

我的笔记本电脑在一个局域网里,使用一个服务器(IP地址是192.168.0.1:8080)作为代理来上网。这个错误看起来是因为poplib无法识别“pop3.126.com”这个域名。请问我该怎么解决这个问题呢?谢谢!

1 个回答

1

你的代理是用来处理http的,它对pop3的流量没有影响。

简单看一下,可能是因为它无法把主机名转换成IP地址。

你可以试试下面这些:

pop3.126.idns.yeah.net
220.181.15.128

或者把下面的结果粘贴出来:

nslookup pop3.126.com

撰写回答