python 代理类型说明

环境 python 2.7

python 代理类型选择

python代理设置通常如下:

proxies = {
  "http": "http://10.10.1.10:3128",
  "https": "http://10.10.1.10:1080",
}

在HTTP 和 HTTPS 两种类型中,HTTPS类型的ip必须对应如:"https" : "https...", 像如:"http" : "https..."这样设置是错误的。

测试代码实例,主要以下有4种情况:

1.requests库代理代码入下:

import requests

proxies = {"http" : "http://122.114.31.177:808"}  # 1. 成功
proxies = {"http" : "https://110.73.50.236:8123"} # 2. 失败
proxies = {"https" : "http://122.114.31.177:808"}  #  3. 成功
proxies = {"https" : "https://110.73.50.236:8123"} #  4. 失败

response = requests.get("http://www.baidu.com", proxies=proxies)
print response.status_code # 检测响应

2.urllib库代理代码如下:

import urllib

proxies = {"http" : "http://122.114.31.177:808"}  # 1. 成功
proxies = {"http" : "https://110.73.50.236:8123"} # 2. 失败
proxies = {"https" : "http://122.114.31.177:808"}  #  3. 成功
proxies = {"https" : "https://110.73.50.236:8123"} #  4. 失败

response = urllib.urlopen("http://www.baidu.com",proxies=proxies)
print response.getcode() # 检测响应

总结

为了避免出现错误,通常我们只需在开头设置HTTPS 代理类型,这样HTTP和HTTP类型的ip 都能代理成功了。

原文地址:https://www.cnblogs.com/wisdom3/p/8111599.html

时间: 2024-10-28 22:37:38

python 代理类型说明的相关文章

python代理可用检测、代理类型检测

#coding:utf-8 import urllib2 def url_user_agent(proxy,url): proxy_support = urllib2.ProxyHandler({'http':proxy}) opener = urllib2.build_opener(proxy_support) urllib2.install_opener(opener) i_headers = {'User-Agent':'Mozilla/5.0 (Windows NT 6.1) Apple

Python爬虫利器四之PhantomJS的用法

前言 大家有没有发现之前我们写的爬虫都有一个共性,就是只能爬取单纯的html代码,如果页面是JS渲染的该怎么办呢?如果我们单纯去分析一个个后台的请求,手动去摸索JS渲染的到的一些结果,那简直没天理了.所以,我们需要有一些好用的工具来帮助我们像浏览器一样渲染JS处理的页面. 其中有一个比较常用的工具,那就是 PhantomJS Full web stack No browser required PhantomJS is a headless WebKit scriptable with a Ja

Python中为什么推荐使用isinstance来进行类型判断?而不是type

转自:http://www.xinxingzhao.com/blog/2016/05/23/python-type-vs-isinstance.html Python在定义变量的时候不用指明具体的的类型,解释器会在运行的时候会自动检查 变量的类型,并根据需要进行隐式的类型转化.因为Python是动态语言,所以一般情 况下是不推荐进行类型转化的.比如"+"操作时,如果加号两边是数据就进行加法操 作,如果两边是字符串就进行字符串连接操作,如果两边是列表就进行合并操作,甚 至可以进行复数的运

python写的多线程 代理服务器 抓取,保存,验证程序【转】

于是决定用python重新写,python支持多线程啊. 已经有一年多没有用过 python了,很多语法,语言特性都快忘记得差不多了. 经过三天业余时间的 摸索,今天我写的这个程序终于可以和大家交流了. 下面放出源代码: 希望有高手能帮我共同完善,  这个程序是我学python语言以来写的第二个程序,应该有很多写得不够简洁的地方,希望行家多多指点 程序现有功能:    1. 能自动从12个网站抓取代理列表,并保存到数据库里面    2. 自动验证每个代理是否可用,并保存验证时的响应时间做为判断代

python爬取准备四 定义Opener和设置代理IP

Handler和Opener Handler处理器和自定义Opener opener是urllib2.OpenerDirector的实例,我们之前一直在使用urlopen,它是一个特殊的opener(也就是我们构建好的). 但是urlopen()方法不支持代理.cookie等其他的HTTP/GTTPS高级功能.所有要支持这些功能: 1.使用相关的Handler处理器来创建特定功能的处理器对象: 2.然后通过urllib2.build_opener()方法使用这些处理器对象,创建自定义opener

Python学习1-Python和Pycharm的下载与安装

本文主要介绍Python的下载安装和Python编辑器Pycharm的下载与安装. 一.Python的下载与安装 1.下载 到Python官网上下载Python的安装文件,进入网站后显示如下图: 网速访问慢的话可直接在这里下载:python-2.7.11.amd64 在Downloads中有对应的支持的平台,这里我们是在Windows平台下运行,所以点击Windows,出现如下: 在这里显示了Python更新的所有版本,其中最上面两行分别是Python2.X和Python3.X对应的最后更新版本

Python——深入理解urllib、urllib2及requests(requests不建议使用?)

深入理解urllib.urllib2及requests            python Python 是一种面向对象.解释型计算机程序设计语言,由Guido van Rossum于1989年底发明,第一个公开发行版发行于1991年,Python 源代码同样遵循 GPL(GNU General Public License)协议[1] .Python语法简洁而清晰,具有丰富和强大的类库. urllib and urllib2 区别 urllib和urllib2模块都做与请求URL相关的操作,但

python学习_day26_面向对象之封装

1.私有属性 (1)动态属性 在python中用双下划线开头的方式将属性隐藏起来.类中所有双下划线开头的名称,如__x都会自动变形成:_类名__x的形式.这种自动变形的特点是: a.类中定义的__x只能在内部使用,如self.__x,引用的就是变形的结果.b.这种变形其实正是针对外部的变形,在外部是无法通过__x这个名字访问到的.c.在子类定义的__x不会覆盖在父类定义的__x,因为子类中变形成了:_子类名__x,而父类中变形成了:_父类名__x,即双下滑线开头的属性在继承给子类时,子类是无法覆

python面向对象知识点疏理

面向对象技术简介 类: 用来描述具有相同的属性和方法的对象的集合.它定义了该集合中每个对象所共有的属性和方法.对象是类的实例.class 类变量:类变量在整个实例化的对象中是公用的.类变量定义在类中且在函数体之外.类变量通常不作为实例变量使用. 数据成员:类变量或者实例变量用于处理类及其实例对象的相关的数据. 方法重写:如果从父类继承的方法不能满足子类的需求,可以对其进行改写,这个过程叫方法的覆盖,也称为方法的重写. 实例变量:定义在方法中的变量,只作用于当前实例的类. 继承:即一个派生类(de