错误 :- socket.gaierror: [Errno 11001] getaddrinfo 获取请求失败

时间:2021-02-25 10:25:25

标签: python python-3.x websocket python-requests python-sockets

import socket
mysocket=socket.socket(socket.AF_INET,socket.SOCK_STREAM)
mysocket.connect(("http://www.py4inf.com",80))
c="http://www.py4inf.com/code/romeo.txt HTTP/1.0\r\n\r\n".encode()
mysocket.send(c)

while True:
    data=mysocket.recv(512)
    if len(data) <1:
        break
    else:
        print(data.decode())
mysocket.close()

Error:-
Traceback (most recent call last):
File "D:\Python_practice_file\main.py", line 3, in <module>
    mysocket.connect(("http://www.py4inf.com",80))
socket.gaierror: [Errno 11001] getaddrinfo failed

我在 Python 中学习 Web 套接字编程时遇到了这个错误,但如果有人能解决这个问题,我似乎遇到了一个错误,我将不胜感激。我看到了一些答案,但它们不相关,因为我没有使用代理,

1 个答案:

答案 0 :(得分:1)

删除 http:// 部分。

这表示协议不是 FQDN getaddrinfo() 尝试解析的一部分。


也改变

c="http://www.py4inf.com/code/romeo.txt HTTP/1.0\r\n\r\n"

c="GET /code/romeo.txt HTTP/1.0\r\n\r\n"

但如果您想执行 HTTP 请求,我建议使用 urllibrequests 库。