python爬虫简单的添加代理进行访问的实现代码


Posted in Python onApril 04, 2019

在使用python对网页进行多次快速爬取的时候,访问次数过于频繁,服务器不会考虑User-Agent的信息,会直接把你视为爬虫,从而过滤掉,拒绝你的访问,在这种时候就需要设置代理,我们可以给proxies属性设置一个代理的IP地址,代码如下:

import requests
 from lxml import etree
 url = "https://www.ip.cn"
 headers = {"User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/70.0.3538.102 Safari/537.36 OPR/57.0.3098.116", }
 pro = {
 # 'https': 'https://118.122.92.252:37901', #四川省成都市 电信
 'https': 'https://27.17.45.90:43411', #湖北省武汉市 电信
 }
 try:
 response = requests.get(url, headers=headers, proxies=pro)
 html_str = response.content.decode()
 # print(html_str)
 html = etree.HTML(html_str)
 message = html.xpath("//div[@class='well']//p/text()")
 ip = html.xpath("//div[@class='well']//p/code/text()")
 eng = html.xpath("//div[@class='well']/p/text()")
 print(message[0]+ip[0])
 print(message[1]+ip[1])
 print(eng[2])
 except requests.exceptions.ProxyError as e:
 print("当前代理异常")
 except:
 print("当前请求异常")

在上面的代码中,调用requests库,对一个IP地址查询网页进行访问,随后使用lxml库的xpath对网页进行分析提取,返回用户访问此网页时自己的IP地址,如果代理设置成功,则会返回你的信息和IP地址,如下:

python爬虫简单的添加代理进行访问的实现代码

如果代理失败则会返回异常,在代码中使用了捕获异常,则会返回设置的提示信息,"当前代理异常",如果不是代理的错误则是"当前请求异常"

python爬虫简单的添加代理进行访问的实现代码

PS:免费的代理不是很稳定,在确认代码无误后,如果仍然返回异常,可尝试更换代理IP...

总结

以上所述是小编给大家介绍的python爬虫简单的添加代理进行访问的实现代码,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

Python 相关文章推荐
Python 中的with关键字使用详解
Sep 11 Python
Python简单获取自身外网IP的方法
Sep 18 Python
win与linux系统中python requests 安装
Dec 04 Python
Django在win10下的安装并创建工程
Nov 20 Python
Python3.x爬虫下载网页图片的实例讲解
May 22 Python
python多进程提取处理大量文本的关键词方法
Jun 05 Python
python用BeautifulSoup库简单爬虫实例分析
Jul 30 Python
python进行TCP端口扫描的实现
Dec 21 Python
Python坐标线性插值应用实现
Nov 13 Python
python jenkins 打包构建代码的示例代码
Nov 29 Python
pycharm双击无响应(打不开问题解决办法)
Jan 10 Python
.img/.hdr格式转.nii格式的操作
Jul 01 Python
Django项目中添加ldap登陆认证功能的实现
Apr 04 #Python
使用 Python 玩转 GitHub 的贡献板(推荐)
Apr 04 #Python
python中yield的用法详解——最简单,最清晰的解释
Apr 04 #Python
详解python项目实战:模拟登陆CSDN
Apr 04 #Python
Python实现字符串匹配的KMP算法
Apr 04 #Python
Python GUI编程完整示例
Apr 04 #Python
Python使用sax模块解析XML文件示例
Apr 04 #Python
You might like
BBS(php & mysql)完整版(七)
2006/10/09 PHP
PHP获取url的函数代码
2011/08/02 PHP
php实现加减法验证码代码
2014/02/14 PHP
PHP记录和读取JSON格式日志文件
2016/07/07 PHP
PHP从零开始打造自己的MVC框架之入口文件实现方法详解
2019/06/03 PHP
PHP大文件切割上传并带进度条功能示例
2019/07/01 PHP
javascript的事件描述
2006/09/08 Javascript
jquery 学习之二 属性(html()与html(val))
2010/11/25 Javascript
仿jQuery的siblings效果的js代码
2011/08/09 Javascript
jquery创建并行对象或者合并对象的实现代码
2012/10/10 Javascript
javascript教程之不完整的继承(js原型链)
2014/01/13 Javascript
javascript异步编程的4种方法
2014/02/19 Javascript
javascript 数组操作详解
2015/01/29 Javascript
jQuery插件实现多级联动菜单效果
2015/12/01 Javascript
JavaScript获取URL中参数querystring的方法详解
2016/10/11 Javascript
canvas实现图像布局填充功能
2017/02/06 Javascript
JS模拟实现ECMAScript5新增的数组方法
2017/03/20 Javascript
JS和jQuery通过this获取html标签中的属性值(实例代码)
2017/09/11 jQuery
JavaScript中click和onclick本质区别与用法分析
2018/06/07 Javascript
JS闭包原理与应用经典示例
2018/12/20 Javascript
微信小程序反编译的实现
2020/12/10 Javascript
[01:19]2014DOTA2国际邀请赛 采访TITAN战队ohaiyo 能赢DK很幸运
2014/07/12 DOTA
Python之py2exe打包工具详解
2017/06/14 Python
python使用opencv按一定间隔截取视频帧
2018/03/06 Python
Python使用matplotlib绘制余弦的散点图示例
2018/03/14 Python
Python 25行代码实现的RSA算法详解
2018/04/10 Python
Python 隐藏输入密码时屏幕回显的实例
2019/02/19 Python
使用python来调用CAN通讯的DLL实现方法
2019/07/03 Python
python  ceiling divide 除法向上取整(或小数向上取整)的实例
2019/12/27 Python
基于HTML5 Canvas:字符串,路径,背景,图片的详解
2013/05/09 HTML / CSS
ALDO加拿大官网:加拿大女鞋品牌
2018/12/22 全球购物
机械系大学毕业生推荐信
2013/11/27 职场文书
中等生评语大全
2014/05/04 职场文书
公司自我介绍演讲稿
2014/08/21 职场文书
2014年医院后勤工作总结
2014/12/06 职场文书
Win11运行cmd提示“请求的操作需要提升”的两种解决方法
2022/07/07 数码科技