使用用户输入发送套接字GET请求的语法是什么

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了使用用户输入发送套接字GET请求的语法是什么相关的知识,希望对你有一定的参考价值。

我试图提示用户提供URL,以便它可以读取任何页面,但是当我运行程序时,我一直收到400错误的请求错误。

我从输入中建立了与主机的套接字连接。但是当我尝试发送一个GET请求时,它会爆炸,因为400错误的请求错误。我该怎么办?

import socket

mysock = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
try:
    url = raw_input('Enter - ')
    splt = url.split('/')
    mysock.connect((splt[2], 80))
    mysock.send('GET url \n\n')
except:
    print 'invalid URL'

while True:
    data = mysock.recv(512)
    if (len(data) < 1 ):
        break
    print data
mysock.close()  
答案

它看起来像你没有正确地调用GET。当你写作

mysock.send('GET url \ n \ n')

您没有将变量“url”嵌入到命令中,而只是使用短语“url”的字符串。

我不知道,但这可能值得一试。

我自己的代码看起来像这样:

cmd ='GET'+地址+'HTTP / 1.0 \ r \ n \ r \ n' cmd = cmd.encode() mysock.send(CMD)

其中“地址”是用户输入的地址的名称。

以上是关于使用用户输入发送套接字GET请求的语法是什么的主要内容,如果未能解决你的问题,请参考以下文章

内存使用:GET与POST?

将 React.js 中的 GET 请求发送到服务器

PHP都能够做什么

socket get请求 获取天气信息

如何使用Python替换Get请求中的用户输入值

iOS:等到用户完成输入然后发送请求