Python TypeError:需要类似字节的对象,而不是';元组';尝试在web浏览器中输入内容时

Python TypeError:需要类似字节的对象,而不是';元组';尝试在web浏览器中输入内容时,python,python-webbrowser,Python,Python Webbrowser,在我的代码中,我试图使代码出现在已输入的URL中。它只是提出了不好的要求。这也是用python制作的 我的代码是: 导入套接字 打印(“在下面输入URL:”) x=输入() mysock=socket.socket(socket.AF\u INET,socket.SOCK\u流) connect(('data.pr4e.org',80)) cmd='GET',x',HTTP/1.0\r\n\r\n'.encode() mysock.send(cmd) 尽管如此: data=mysock.recv

在我的代码中,我试图使代码出现在已输入的URL中。它只是提出了不好的要求。这也是用python制作的

我的代码是:
导入套接字
打印(“在下面输入URL:”)
x=输入()
mysock=socket.socket(socket.AF\u INET,socket.SOCK\u流)
connect(('data.pr4e.org',80))
cmd='GET',x',HTTP/1.0\r\n\r\n'.encode()
mysock.send(cmd)
尽管如此:
data=mysock.recv(512)
如果len(数据)<1:
打破
打印(data.decode(),end='')
mysock.close()
打印('如果顶部显示“HTTP/1.1 200 OK”,则表示连接正常。代码为')
我的输出:
在下面输入URL:
https://www.google.com/webhp?hl=en&sa=X&ved=0ahUKEwjU8fr9oJDoAhVB7qwKHX6VB0AQPAgH
HTTP/1.1400错误请求
日期:2020年3月10日星期二格林威治标准时间15:50:00
服务器:Apache/2.4.18(Ubuntu)
内容长度:308
连接:关闭
内容类型:text/html;字符集=iso-8859-1
400错误请求
错误的请求
您的浏览器发送了此服务器无法理解的请求。


位于do1.dr-chuck.com端口80的Apache/2.4.18(Ubuntu)服务器 如果顶部显示“HTTP/1.1200 OK”,则表示连接正常。代码是 >>> =重新启动:C:/Users/sharm/AppData/Local/Programs/Python/Python38-32/WebBrowser.py 在下面输入URL: https://www.google.com/ 回溯(最近一次呼叫最后一次): 文件“C:/Users/sharm/AppData/Local/Programs/Python/Python38-32/WebBrowser.py”,第10行,在 mysock.send(cmd) TypeError:需要类似字节的对象,而不是“元组”
我只想用Python制作一个Web浏览器,GitHub上的浏览器是一个包,我不喜欢这样


给我Python 3代码来修复它。

这是家庭作业吗?为什么不使用
请求
或至少
urllib
?您的意思是:
mysock.send(''.join(cmd))
?尝试将python版本降级到3.7。它对我来说很好,或者:
mysock.send('''.join(cmd.encode())
?Nvm,我修复了它。代码位于并运行main.py。
Enter a URL Below:
https://www.google.com/webhp?hl=en&sa=X&ved=0ahUKEwjU8fr9oJDoAhVB7qwKHX6VB0AQPAgH
HTTP/1.1 400 Bad Request

Date: Tue, 10 Mar 2020 15:50:00 GMT

Server: Apache/2.4.18 (Ubuntu)

Content-Length: 308

Connection: close

Content-Type: text/html; charset=iso-8859-1



<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
<html><head>
<title>400 Bad Request</title>
</head><body>
<h1>Bad Request</h1>
<p>Your browser sent a request that this server could not understand.<br />
</p>
<hr>
<address>Apache/2.4.18 (Ubuntu) Server at do1.dr-chuck.com Port 80</address>
</body></html>
If it says "HTTP/1.1 200 OK" at the top, That means the connections are OK. The code is 
>>> 
= RESTART: C:/Users/sharm/AppData/Local/Programs/Python/Python38-32/WebBrowser.py
Enter a URL Below:
https://www.google.com/
Traceback (most recent call last):
  File "C:/Users/sharm/AppData/Local/Programs/Python/Python38-32/WebBrowser.py", line 10, in <module>
    mysock.send(cmd)
TypeError: a bytes-like object is required, not 'tuple'