关于python爬虫代理ip设置proxies的问题

本人在学习爬虫的过程中学习如何设置代理ip,但是遇到了request请求中proxies参数编写的问题
首先必须知道proxies参数是一个字典类型
proxies={ 'http': 'http://xx.xx.xx.xx:xx' } 但是有的网站用的是http协议,有的是https,我们该怎么设置呢?我们来测试一下
这里有个检测访问ip的清洁版网址:http://icanhazip.com/

一.用https检测代理ip是否成功

关于python爬虫代理ip设置proxies的问题_第1张图片
*我们发现requests请求成功了,但是代理ip并没有起效,我们使用的依然是本地的ip
*利用浏览器打开核对,果然,使用的是真实的本地ip地址
关于python爬虫代理ip设置proxies的问题_第2张图片

二.用http检测代理ip

关于python爬虫代理ip设置proxies的问题_第3张图片

  • 用http代理ip,和目标网址用的同样的协议,竟奇迹般报错?

三.解决办法

  • 通过百度找到了万全之策,即把两个都加上,requests会自动选择合适的协议
proxies={
     
    'https': 'http://xx.xx.xx.xx:xx',
    'http': 'http://xx.xx.xx.xx:xx'
}

四.再次测试

关于python爬虫代理ip设置proxies的问题_第4张图片

  • 代理ip和得到的ip完全一致,成功了!
  • 用这个方法既解决了真实ip访问的问题,又适用于多种类型的网页

你可能感兴趣的:(代理ip,爬虫,反爬,python)