【发布时间】:2018-12-26 15:01:47
【问题描述】:
我编写了一个程序,通过使用套接字库使用python 3.5 打开网页。首先,我提示用户输入 URL,然后我 split() 该 URL 为 connect() 方法提取主机名。但我收到以下错误,指向我的获取请求命令:
cmd ='GET' + user_url + ' HTTP/1.0\n\n'.encode() TypeError: Can't 将 'bytes' 对象隐式转换为 str
以下是我的代码:
import socket
user_url = input("Enter url: ")
host_name = user_url.split("/")[2]
mysock = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
mysock.connect((host_name, 80))
cmd ='GET ' + user_url + ' HTTP/1.0\n\n'.encode()
mysock.send(cmd)
while True:
data = mysock.recv(512)
if (len(data) < 1):
break
print (data.decode(),end='')
mysock.close()
【问题讨论】:
-
哈哈:
cmd =('GET ' + user_url + ' HTTP/1.0\n\n').encode() -
(cmd ='GET ' + user_url + ' HTTP/1.0\n\n').encode()?
标签: python string sockets byte