zoukankan      html  css  js  c++  java
  • urllib.request中Handler处理器

    1、定义
      自定义的urlopen()方法,urlopen()方法是一个特殊的opener(模块已定义好),不支持代理等功能,通过Handler处理器对象来自定义opener对象
    2、常用方法
      1、build_opener(Handler处理器对象) :创建opener对象
      2、opener.open(url,参数)
    3、使用流程
      1、创建相关的Handler处理器对象
        http_handler = urllib.request.HTTPHandler()
      2、创建自定义opener对象
        opener = urllib.request.build_opener(http_handler)
      3、利用opener对象打开url
        req = urllib.request.Request(url,headers=headers)
        res = opener.open(req)
        result = res.read().decode("utf-8")
    4、Handler处理器分类
      1、HTTPHandler() :没有任何特殊功能
      2、ProxyHandler(普通代理)
        代理: {"协议":"IP地址:端口号"}
      3、ProxyBasicAuthHandler(密码管理器对象) :私密代理
      4、HTTPBasicAuthHandler(密码管理器对象) : web客户端认证
    5、密码管理器对象作用
      1、私密代理
      2、Web客户端认证
      3、程序实现流程
        1、创建密码管理器对象
          pwdmg = urllib.request.HTTPPasswordMgrWithDefaultRealm()
        2、把认证信息添加到密码管理器对象
          pwdmg.add_password(None,webserver,user,passwd)
        3、创建Handler处理器对象
          1、私密代理
            proxy = urllib.request.ProxyAuthBasicHandler(pwdmg)
          2、Web客户端
            webbasic = urllib.request.HTTPBasicAuthHandler(pwdmg)

  • 相关阅读:
    基于typora编写Markdown文档
    VMware Workstation常见的故障处理
    VMware Workstation产品常用的快捷键
    2
    1
    9
    8
    7
    6
    5
  • 原文地址:https://www.cnblogs.com/zengsf/p/10024480.html
Copyright © 2011-2022 走看看