python3.X系列以上调用socket.send()时候需要将str进行编码,变成字节数据,同样接受数据的时候需要进行解码。
才能够安装正常的格式进行显示。
import socket mysock = socket.socket(socket.AF_INET,socket.SOCK_STREAM) mysock.connect(('www.dr-chuck.com',80)) mysock.send(("GET http://www.py4inf.com/code/remeo.txt HTTP/1.0\n\n").encode()) while True: data = mysock.recv(512).decode() if len(data) < 1: break print(data)mysock.close()
也可以使用urllib来实现url内容的获取,但是在python3.x中需要引入新子包,否则会报错。
import urllib.request
fhand = urllib.request.urlopen('http://www.py4inf.com/code/remeo.txt')
for line in fhand: print(line.strip())