版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
代理服务器Contents素养目标培养良好的信息素养和道德意识。技能目标熟练使用自定义opener类和设置代理服务器。知识目标掌握代理服务器的用途和用法。思考很多网站会检测某一段时间某个IP的访问次数。过于频繁同一IP访问会被禁止该IP的访问这种情况要怎么办结论可以使用代理服务器每隔一段时间换一个代理。被禁止某个IP继续爬取数据换成其他IP可以有效解决被网站禁止访问的情况。openerUrlopen就是模块构建好的一个opener。但是,urlopen不支持代理、Cookie等其他的HTTP/HTTPS高级功能。而是自定义opener不能使用自带的urlopenopener是urllib.request.OpenerDirector类的对象如果要想设置代理:简单的自定义opener使用相关的Handler处理器创建特定功能的处理器对象。第1步通过urllib.request.build_opener()方法使用这些处理器对象创建自定义的opener对象。第2步第3步使用自定义的opener对象,调用open方法发送请求。自定义opener需要执行下列三个步骤:简单的自定义opener示例importurllib.requesthttp_handler=urllib.request.HTTPHandler()#构建一个HTTPHandler处理对象,支持处理HTTP请求opener=urllib.request.build_opener(http_handler)#调用urllib2.build_opener()方法,创建支持处理HTTP请求的opener对象request=urllib.request.Request('/')#构建Request请求response=opener.open(request)#调用自定义opener对象的open()方法,发送request请求print(response.read().decode('utf-8'))#获取服务器响应内容设置代理服务器使用urllib.request中的ProxyHandler方法来设置代理服务器。httpproxy_handler=urllib.request.ProxyHandler({"http":"01:4275"})nullproxy_handler=urllib.request.ProxyHandler({})#构建了两个代理Handler,一个有代理IP,一个没有代理IPproxy_switch=True#定义一个代理开关#通过urllib.request.build_opener()方法使用代理Handler对象创建自定义的opener对象#根据代理开关是否打开,使用不用的代理模式ifproxy_switch:opener=urllib.request.build_opener(httpproxy_handler)else:opener=urllib.request.build_opener(nullproxy_handler)request=urllib.request.Request("")response=opener.open(request)print(response.read().decode('utf-8'))设置代理服务器可以在一些代理网站上收集免费代理,测试后如果可以用,就把它收集起来用在爬虫上面。西刺免费代理IPProxy360代理快代理免费代理全网代理IPWWW.免费开放代理的获取基本没有成本免费代理网站主要有以下几个:设置代理服务器如果代理IP足够多,就可以像随机获取User-Agent一样,随机选择一个代理去访问网站。importrandomproxy_list=[{"http":"1:80"},{"http":"1:80"},{"http":"1:80"},{"http":"1:80"},{"http":"1:80"}]#随机选择一个代理proxy=random.choice(proxy_list)importurllib.requestimportrandomproxy_list=[{'http':'1:80'},{'http':'1:80'},{'http':'1:80'},{'http':'1:80'}]proxy=random.choice(proxy_list)httpproxy_handler=urllib.request.ProxyHandler(proxy)opener=urllib.request.build_opener(httpproxy_handler)request=urllib.request.Request('')response=opener.open(request)print(response.read())示例设置代理服务器设置代理服务器有很多人在使用。寿命短速度慢匿名度不高免费开放代理专业爬虫工程师或爬虫公司会使用。高品质的私密代理缺点:通常需要找专门的代理供应商购买,再通过用户名/密码授权使用。本讲小结
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026年10月21日 双鸭山市尖山区人才考试中心 奔驰 售后服务管培生 19人
- 四川省广元市川师大万达中学2025-2026学年高一上学期期末模拟(1月)考试化学试题(含答案)
- 山东省滨州市2025-2026学年高一上学期期末考试化学试题(含答案)
- 湖南郴州市苏仙区2025-2026学年下学期期末教学质量监测八年级道德与法治试卷(含答案)
- 福建省莆田市2027届高三上学期开学质量诊断数学试卷(含答案)
- 2025-2026学年陕西省西安市爱知中学八年级(下)期末英语试卷(含答案)
- 2026寄宿制学校德育骨干专题培训课件:用爱与责任守护青春
- 普外科小讲课
- 消化性溃疡诊治进展
- 2026新学期九年一贯制学校年级组长工作经验分享课件-班级管理的智慧与艺术
- 2026中国智能电网分布式能源消纳技术路线与经济性比较
- 项目管理层组织机构及岗位配置方案
- 旧混凝土路面拆除及恢复工程施工方案
- 健康生活方式教育班会 课件
- 20kV及以下配电网工程不停电作业补充定额
- 初中数学知识点总结全
- 2026年超星尔雅学习通《尊重学术道德遵守学术规范》章节通关考试题库AB卷附答案详解
- 2026广东惠州市自然资源局招聘编外人员4人考试参考题库及答案解析
- 波形梁护栏监理实施细则
- 贵州黄果树金叶科技有限公司招聘笔试题库2026
- (2025年)档案管理员笔试试题及答案
评论
0/150
提交评论