Python 网络编程和Socket
2017-07-24 20:43:49
Socket又称"套接字",应用程序通常通过"套接字"向网络发出请求或者应答网络请求。Http协议主要的操作流程是request-response即请求响应。我们可以利用python中的socket库完成连接的建立,然后使用GET方法获取服务器端的数据。
一、使用socket获取网页
import socket #套接字的参数声明,不用修改直接使用 mysock = socket.socket(socket.AF_INET,socket.SOCK_STREAM) #建立套接字连接,地址加上端口号 mysock.connect(('www.py4inf.com', 80)) #根据HTTP协议要求,发送的信息必须以GET开头,之后是URL地址+协议+两个换行,最后由于是py3,所以需要加上encode() mysock.send('GET http://www.py4inf.com/ HTTP/1.1\n\n'.encode()) while True: #由于是py3所以需要加上decode() data = mysock.recv(512).decode() if len(data)<1: break print(data) mysock.close()
二、使用request库进行网络连接
这个就非常方便了,不用直接和传输层的socket打交道,直接向url进行ge方法。
import requests r = requests.get('http://jwc.seu.edu.cn/') print(r.text)