ITPub博客

首页 > IT职业 > IT职场 > 新手使用python采集数据的尴尬事之代理ip

新手使用python采集数据的尴尬事之代理ip

IT职场 作者:johnychen 时间:2021-09-09 10:41:13 0 删除 编辑


背景 , 原本不是爬虫的,因公司业务需求需要一些前程无忧的数据,被迫上岗,简单的学了些python。因为网站的特殊性,访问次数多了就要封ip,意味着还要找ip。所以在网上随便找了家代理叫亿牛云,然后跟客服沟通了下我这个小白的需求,客服跟我推介了他们家的爬虫动态转发代理,说适合我这样的小白使用,使用方式比较简单,我就抱着试试的想法接受了。客服给我发了一段关于python怎么使用他们家代理的代码示例,https:///help/ss_demo/#1python。打开看了之后我以为示例就是可以直接使用的,而且客服也说过代码示例可以直接复制使用,我就直接复制然后把目标网站改成了我自己的,代码如下

#! -*- encoding:utf-8 -*-

 

        import requests

        import random

 

        # 要访问的目标页面

        targetUrl = "www.mkt.51job.com"

 

        # 要访问的目标HTTPS页面

        # targetUrl = "https://www.mkt.51job.com"

 

        # 代理服务器(产品官网 )

        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

然后就去运行,结果是这样

 

 图片描述

然后就去找客服,结果人家说那只是代码示例,里面的代理参数是需要他们提供重新配置才可以使用,顿时就觉得自己真的很小白,然后请客服开通了代理测试了下,结果运行起了,对我这样的小白来还好使用的方式简单,不然又要各种查资料了。我想很多人都是这样吧,刚开始的时候各种小白问题都有可能存在,看来不管是哪个领域,还是要深入的学习才好!


来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/4301/viewspace-2825009/ ,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论

注册时间:2015-07-25

  • 博文量
    67
  • 访问量
    6041