爬虫之proxy(代理)

proxy简介

proxy即为代理,我们爬虫的时候肯定会有频繁访问某一网站的情况,这个时候有些服务器会识别到我们是非正常访问,就会把我们的IP禁掉,这个时候就需要用代理了。

就好比现实生活中,我需要向A借一件东西,但是我跟A是仇人,直接向他借的话他不会借给我,这个时候我就让B帮我像A借,就说他要用,然后B借到东西之后再把东西给我用,这时,B就是我的代理了。

常用的免费代理网站:http://www.goubanjia.com/。

爬虫应该选择什么样的代理?

  • 针对不需要用户登录,cookie验证的网站,一般选择动态高匿代理。
  • 对于需要用户登录,身份认证的。一般选择静态IP

使用proxy的步骤

  1. 设置代理地址 proxy = {'http':'52.187.162.198:3128'}
  2. 创建ProxyHeader proxyHeader = request.ProxyHandler(proxy)
  3. 创建Opener opener = request.build_opener(proxyHeader)
  4. 安装Opener request.install_opener(opener)

示例

from urllib import request

# 设置代理地址
proxy = {'http':'52.187.162.198:3128'}

# 创建ProxyHeader
proxyHeader = request.ProxyHandler(proxy)

# 创建Opener
opener = request.build_opener(proxyHeader)

# 安装Opener
request.install_opener(opener)

# 然后剩下的就跟正常使用差不多,只不过此时的request已经是绑定了代理之后的request
url = 'https://www.taobao.com/'
req = request.Request(url)
response = request.urlopen(req)
print(response.read().decode())

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏微服务生态

论代码级性能优化变迁之路(一)

大家好,很久没有和大家一起讨论技术了,那么今天我将和大家一起探讨我负责的某项目的性能变迁之路。

9220
来自专栏逸鹏说道

C#线程篇---Windows调度线程准则(3)

Windows本身就是一个抢占式操作系统,它的实现,必定有某种算法在里面,比如什么时候调度哪些线程,需要花费多长时间等问题。 我们时时在用Windows,作为程...

36140
来自专栏软件测试经验与教训

看图说话:持久式XSS(跨站)漏洞示例

读书与实践是获取知识的主要渠道,学习的权力只掌握在每个人自己手中,让学习成为一种生活的习惯,这比任何名牌大学的校徽重要得多!

27720
来自专栏Java帮帮-微信公众号-技术文章全总结

Java(web)项目安全漏洞及解决方式【面试+工作】

86430
来自专栏Golang语言社区

Golang之chan/goroutine

最近在team内部培训golang,目标是看看golang能否被C工程师快速掌握。我定了个一个月,共计20小时的培训计划,首先花10个小时(两周,每天1小时)让...

39870
来自专栏IMWeb前端团队

再见2015 再见cmd

本文作者:IMWeb yisbug 原文出处:IMWeb社区 未经同意,禁止转载 2015年已经快要过去了,你是否还在使用有着十几年历史的cmd命令行...

36190
来自专栏解Bug之路

解Bug之路-记一次JVM堆外内存泄露Bug的查找 顶

JVM的堆外内存泄露的定位一直是个比较棘手的问题。此次的Bug查找从堆内内存的泄露反推出堆外内存,同时对物理内存的使用做了定量的分析,从而实锤了Bug的源头。笔...

10740
来自专栏IT技术精选文摘

解Bug之路-记一次JVM堆外内存泄露Bug的查找

15130
来自专栏安恒信息

重磅 | Struts2 S2-048远程代码执行漏洞分析报告

Struts2 S2-048 远程代码执行漏洞分析报告 安全通告 尊敬的客户: 2017年7月7日,Struts2官方公布最新的Struts2远程代码执行漏洞S...

36780
来自专栏程序员的碎碎念

如何解决Python包依赖问题

以简洁高效(指编程较为高效, 而不是运行速度)出名的Python, 在包依赖问题上有时候让人挠头.

24520

扫码关注云+社区

领取腾讯云代金券