zoukankan      html  css  js  c++  java
  • 3、自定义ProxyHandler发送请求

    from urllib import request
    # 请求的url
    url = "http://www.jinri.com"
    # 请求的头文件
    headers = {
        "User-Agent": "Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/64.0.3282.186 Safari/537.36"
    }
    # 创建请求对象
    req = request.Request(url,headers = headers)
    # 公开代理ip
    proxy = {"http":"114.215.95.188:3128"}
    # 私密代理
    # proxy = {"http":"用户名:密码@114.215.95.188:3128"}
    # 创建密码管理对象,
    # passwordMgr = request.HTTPPasswordMgrWithDefaultRealm()
    # 向密码管理对象添加密码信息,
    # 第一参数:域 一般写None,第二个参数:代理ip和端口,第三参数:用户名,第四参数:密码
    # passwordMgr.add_password(None,"114.215.95.188:3128","username","password")
    # 根据密码管理器创建代理处理器
    # proxyHandler = request.ProxyBasicAuthHandler(passwordMgr)
    # 创建代理Handler
    proxyHandler = request.ProxyHandler(proxy)
    # 创建opener,可同时添加多个处理,用逗号隔开,比如代理处理器,cookie处理器等
    opener = request.build_opener(proxyHandler)
    # 发送请求
    response = opener.open(req)
    # 读取响应文件
    html = response.read().decode('utf-8')
    print(html)
    
  • 相关阅读:
    hadoop 2.x 简单实现wordCount
    httpClient连接超时设置
    Java io使用简介
    log4j使用教程
    F#中的自定义隐式转换
    Computation expressions and wrapper types
    Introducing 'bind'
    Understanding continuations
    Computation expressions: Introduction
    MySQL优化总结,百万级数据库优化方案
  • 原文地址:https://www.cnblogs.com/toloy/p/8616680.html
Copyright © 2011-2022 走看看