1

爬虫框架

 Request

requests是使用Apache2 licensed 许可证的HTTP库。

用python编写。

比urllib2模块更简洁。

Request支持HTTP连接保持和连接池,支持使用cookie保持会话,支持文件上传,支持自动响应内容的编码,支持国际化的URL和POST数据自动编码。

在python内置模块的基础上进行了高度的封装,从而使得python进行网络请求时,变得人性化,使用Requests可以轻而易举的完成浏览器可有的任何操作。

现代,国际化,友好。

requests会自动实现持久连接keep-alive

 

客户端

import requests

r1= requests.post(
    url="http://127.0.0.1:8000/login/",
    data={"username":"alex","password":123}

)
print(r1.text)

 

模拟服务端

from django.shortcuts import render,HttpResponse

# Create your views here.
def login(request):
    print(request.POST)
    print(request.body
          )
    return HttpResponse( "......")

  

打印结果

data参数传递的数据格式为

b'username=alex&password=123'

 

 

 

import requests

r1= requests.post(
    url="http://127.0.0.1:8000/login/",
    json={"username":"alex","password":123}

)
print(r1.text)

  

 

模拟服务端

from django.shortcuts import render,HttpResponse

# Create your views here.
def login(request):
    print(request.POST)
    print(request.body
          )
    return HttpResponse( "......")

  

 打印出来的是json字符串

 

 

 为什么request.post是空的 ,因为 post解析不了 JSON格式的formdata  没有json解析器。

 

 

 

 

twisted框架

twisted网络框架的三个基础模块:Protocol, ProtocolFactory, Transport.这三个模块是构成twisted服务器端与客户端程序的基本。

Protocol:Protocol对象实现协议内容,即通信的内容协议
ProtocolFactory: 是工厂模式的体现,在这里面生成协议
Transport: 是用来收发数据,服务器端与客户端的数据收发与处理都是基于这个模块

在windows中安装twisted需要先安装pywin32,自己去下载下就行。随后pip install twisted就会帮我们安装twisted以及zope。  

  

 

posted @ 2018-11-15 23:02  萌哥-爱学习  阅读(352)  评论(0编辑  收藏  举报