新闻  |   论坛  |   博客  |   在线研讨会
爬虫代理使用状态码
laical | 2021-01-04 17:07:51    阅读:61   发布文章

大数据时代,网络爬虫的工作和代理IP是息息相关的。尤其是互联网行业,网络爬虫工作是项目必须使用到代理ip,没有代理ip,爬虫工作将会非常的艰难。那如果网络爬虫用户使用了亿牛云隧道转发的爬虫代理加强版,报错状态码如何解决呢?

隧道转发爬虫代理加强版:

(1)  代理使用失败

让对方截图看看代理代码,代理信息是否提取配置正确。重点注意必须使用代理域名,不能是代理服务器IP。

要求对方复制demo,然后加上ua随机优化,按照所开代理的请求数,按照300毫秒为单位进行管理,运行程序后统计错误信息和http的状态码。

代理链接失败

原因:对方是否有防火墙,导致无法链接我们服务器;对方开的代理是否过期。

http状态码407

原因:代理认证信息失败,让对方严格按照demo配置代理信息

http状态码429

原因:请求超过代理限制,严格按照所开代理的请求数,按照300毫秒为单位进行管理。如果限制之后,既然大量429,需要优化爬虫策略,应该是目标网站返回的错误提示。

http状态码302

原因:访问的是https网站,会自动跳转一次,正常现象;访问的http网站,网站拒绝服务,大量302需要优化爬虫策略

http状态码403  503 或504

原因:少量不影响,大量403  503或504需要优化爬虫策略

http请求超时

原因:http请求的超时设置为10秒,尤其是对方访问国外网站的时候。

(2)  没法确认代理是否使用

要求对方直接复制demo,访问http://current.ip.16yun.cn:802,看看返回的IP,如果是我们的代理IP,就表示代理链接成功

(3)  爬虫代理使用成功,请求失败率较高

统计错误信息和http的状态码,将200和各自错误信息进行统计,看看比例分布,参考第(1)项里面的http状态码进行解答。

隧道转发爬虫代理加强版使用demo:

# 要访问的目标页面
    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,
    }


*博客内容为网友个人发布,仅代表博主个人观点,如有侵权请联系工作人员删除。

参与讨论
登录后参与讨论
推荐文章
最近访客