论坛首页 编程语言技术论坛

分享爬虫实用经验

浏览 328 次
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
作者 正文
   发表时间:2021-12-01  
前几天微信群有个粉丝在问了一道关于Python网络爬虫的问题,如下图所示。不得不说,在爬虫工作或其他一些业务中,对于更换ip地址去进行任务是很常见的,这样的问题其实是很简单的,那就是直接使用代理ip就可以了呀。虽然这对于很多人来说是么有什么技术含量的事,但是对于一些新手来说也是有点难度的,因为他们大多都直接去选择网上的免费代理,但是很多时候他们会发现免费的代理可用率实在太低了,所以面对需要代理的情况最好的方式就是选择付费的代理。代理的使用方式也是有几种,今天我们就选择一种和大家主要交流下。对于爬虫来说最简单的一种代理使用方式就是动态转发,是一种自动转发技术,通过配置固定代理域名、端口、用户名和密码直接使用,默认每个http请求自动转发,不需要绑定IP白名单,方便快捷,适合快速启动项目。怀着学习的心,我们看下具体的使用方式,这里借用的是亿牛云代理提供的demo:#! -*- encoding:utf-8 -*-

    import requests
    import random

    # 要访问的目标页面
    targetUrl = "http://httpbin.org/ip"

    # 要访问的目标HTTPS页面
    # targetUrl = "https://httpbin.org/ip"

    # 代理服务器(产品官网 www.16yun.cn)
    proxyHost = "t.16yun.cn"
    proxyPort = "31111"

    # 代理验证信息
    proxyUser = "username"
    proxyPass = "password"

    proxyMeta = "http://%(user)s:%(pass)s@%(host)s:%(port)s" % {
        "host" : proxyHost,
        "port" : proxyPort,
        "user" : proxyUser,
        "pass" : proxyPass,
    }

    # 设置 http和https访问都是用HTTP代理
    proxies = {
        "http"  : proxyMeta,
        "https" : proxyMeta,
    }


    #  设置IP切换头
    tunnel = random.randint(1,10000)
    headers = {"Proxy-Tunnel": str(tunnel)}



    resp = requests.get(targetUrl, proxies=proxies, headers=headers)

    print resp.status_code
    print resp.text以上的代码示例是可以直接使用,欢迎大家积极尝试。​若有收获,就点个赞吧
论坛首页 编程语言技术版

跳转论坛:
Global site tag (gtag.js) - Google Analytics