zoukankan      html  css  js  c++  java
  • 爬虫框架

     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。  
    

      

  • 相关阅读:
    个人博客作业-软件案例分析
    个人项目
    个人博客作业
    软件工程作业一
    BUAAOO第四单元总结
    BUAAOO第三单元总结
    BUAAOO第二单元总结之电梯问题
    BUAAOO第一单元的总结
    个人总结
    第三次个人编程作业
  • 原文地址:https://www.cnblogs.com/mengbin0546/p/9966732.html
Copyright © 2011-2022 走看看