On Fri, Jun 16, 2017 at 7:06 PM, JAIDIP patel <jaidip...@gmail.com> wrote: > The code I wrote: > > import socket > > mysock = socket.socket(socket.AF_INET, socket.SOCK_STREAM) > mysock.connect(('data.pr4e.org', 80)) > mysock.send('GET http://data.pr4e.org/intro-short.txt HTTP/1.0\n\n') > while True: > data =x.recv(512) > if ( len(data) < 1 ) : > break > print (data) > > mysock.close()
Lutz has already suggested one solution, but here's an alternative: you can use a byte-string literal. mysock.send(b'GET http://data.pr4e.org/intro-short.txt HTTP/1.0\n\n') While you're at it, though, I recommend complying with protocol correctly: mysock.send(b'GET http://data.pr4e.org/intro-short.txt HTTP/1.0\r\n\r\n') The HTTP specification says that lines should end with CR LF. You can actually simplify your condition, too: if not data: This is considered more "Pythonic" - that is to say, it's more the way that experienced Python programmers work. Consider it points for style. :) Hope that helps! ChrisA -- https://mail.python.org/mailman/listinfo/python-list