在编写爬虫爬取数据的时候,因为很多网站都有反爬虫措施,所以很容易被封IP,就不能继续爬了。在爬取大数据量的数据时更是瑟瑟发抖,时刻担心着下一秒IP可能就被封了。

本文就如何解决这个问题总结出一些应对措施,这些措施可以单独使用,也可以同时使用,效果更好。

伪造User-Agent

在请求头中把User-Agent设置成浏览器中的User-Agent,来伪造浏览器访问。比如:

headers ={'User-Agent':'Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/52.0.2743.116 Safari/537.36'} resp = requests.get(url,headers = headers)

还可以先收集多种浏览器的User-Agent,每次发起请求时随机从中选一个使用,可以进一步提高安全性:

把上面随机选择一个User-Agent的代码封装成一个函数:

在每次重复爬取之间设置一个随机时间间隔

比如:

time.sleep(random.randint(0,3)) # 暂停0~3秒的整数秒,时间区间:[0,3]

或:

time.sleep(random.random()) # 暂停0~1秒,时间区间:[0,1)

伪造cookies

若从浏览器中可以正常访问一个页面,则可以将浏览器中的cookies复制过来使用,比如:

注:用浏览器cookies发起请求后,如果请求频率过于频繁仍会被封IP,这时可以在浏览器上进行相应的手工验证(比如点击验证图片等),然后就可以继续正常使用该cookies发起请求。

使用代理

可以换着用多个代理IP来进行访问,防止同一个IP发起过多请求而被封IP,比如:

附:GitHub上的一个"反反爬虫"项目

道高一尺魔高一丈,你有反爬虫措施,那我也有各种"反反爬虫"的措施,GitHub上就有一位大神专门整理了一个这样的项目:Anti-Anti-Spider,链接地址为:github.com/luyishisi/An可以研究一下。

以上就是Python爬虫防封ip的一些技巧的详细内容,更多关于Python爬虫防封ip的资料请关注脚本之家其它相关文章!

python爬虫cookie池 与ip绑定_Python爬虫防封ip的一些技巧相关推荐

  1. python爬虫cookie池 与ip绑定_Python爬虫:设置Cookie解决网站拦截并爬取蚂蚁短租

    前言 文的文字及图片来源于网络,仅供学习.交流使用,不具有任何商业用途,版权归原作者所有,如有问题请及时联系我们以作处理. 作者: Eastmount PS:如有需要Python学习资料的小伙伴可以加 ...

  2. 32怎么通过一个按键实现不同工作模式_游戏工作室防封IP,免费领!!!魔兽世界怀旧版独享IP免费送...

    现如今网络游戏公司的查封号技术越来越高了,而且抓的也越来越严格的, 因此如今想利用游戏获取,务必要掌握基础的防封技术, 如果你不懂防封技术,就算有好的项目你也也只有眼巴巴的望着别人吃肉, 尽管今天介绍 ...

  3. python 代理ip验证_python爬虫成长之路(二):抓取代理IP并多线程验证

    上回说到,突破反爬虫限制的方法之一就是多用几个代理IP,但前提是我们得拥有有效的代理IP,下面我们来介绍抓取代理IP并多线程快速验证其有效性的过程. 一.抓取代理IP 提供免费代理IP的网站还挺多的, ...

  4. python爬虫ip代理_python爬虫批量抓取ip代理的方法(代码)

    本篇文章给大家带来的内容是关于python爬虫批量抓取ip代理的方法(代码),有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助. 使用爬虫抓取数据时,经常要用到多个ip代理,防止单个ip访 ...

  5. python淘宝爬虫登陆功能和下单功能_Python 爬虫实战5 模拟登录淘宝并获取所有订单...

    经过多次尝试,模拟登录淘宝终于成功了,实在是不容易,淘宝的登录加密和验证太复杂了,煞费苦心,在此写出来和大家一起分享,希望大家支持. 本篇内容 python模拟登录淘宝网页 获取登录用户的所有订单详情 ...

  6. python淘宝爬虫登陆功能和下单功能_Python爬虫实战五之模拟登录淘宝并获取所有订单 | 静觅...

    经过多次尝试,模拟登录淘宝终于成功了,实在是不容易,淘宝的登录加密和验证太复杂了,煞费苦心,在此写出来和大家一起分享,希望大家支持. 温馨提示 更新时间,2016-02-01,现在淘宝换成了滑块验证了 ...

  7. python的requests库的添加代理_python爬虫之requests库使用代理

    python爬虫之requests库使用代理 发布时间:2020-03-25 17:00:54 来源:亿速云 阅读:110 作者:小新 今天小编分享的是关于python爬虫的requests库使用代理 ...

  8. python爬虫工程师认证证书报考条件_Python爬虫工程师要具备怎样的技能

    对于程序员来说基本上不存在重复性的工作,任何重复劳动都可以通过程序自动解决.下面千锋带你一起了解爬虫需要哪些相关的技能. 1.基本的编码基础(至少一门编程语言) 这个对于任何编程工作来说都是必须的.基 ...

  9. python爬虫requests源码链家_Python 爬虫 链家二手房(自行输入城市爬取)

    因同事想在沈阳买房,对比分析沈阳各区的房价,让我帮忙爬取一下链家网相关数据,然后打 算记下笔记 用于总结学到的东西&用到的东西. 一.爬虫需要会什么? 学习东西 首先你要知道它是干嘛的.爬虫 ...

最新文章

  1. ORACLE解决登陆em状态暂挂方法
  2. YCProgress自定义百分比进度条
  3. java 页面 分离 实现_JavaBean实现JSP页面和代码分离
  4. python心跳的实现_(python)面向对象
  5. 阿里云服务器安全设置
  6. Zabbix Maintenance 维护周期
  7. 预览docx_Windows-快速预览文件-QuickLook
  8. Jmeter java.lang.OutOfMemoryError: GC overhead limit exceeded
  9. 从中师到博士,我的22年...
  10. Collections.shuffle()方法的使用
  11. YGC 问题排查,又涨姿势了!
  12. Qt编写Modbus从机程序
  13. 计算机度分秒在线,角度计算器度分秒在线
  14. 在线视频下载10个妙招方法大全
  15. v-distpicker 直辖市的修改
  16. 【tool】番茄时间管理法
  17. 导出(合并)手机QQ浏览器下载的视频
  18. 数学单位M和单位B是什么意思
  19. 某技术总监认为处女座码农要重用,并给出3点原因,你认同么?
  20. Egret性能优化之优化渲染

热门文章

  1. java中文乱码 寮犱笁_MySQL命令窗口中文乱码或插入中文数据失败
  2. 一种常见的关于率指标的错误分析思路
  3. webpack VS Node.js - 二者对 require 功能的实现区别
  4. Angular Injector.create的工作原理
  5. SAP Spartacus的User明细如何通过ngrx-store-devtools被解析出来
  6. 在Visual Studio Code里编写ABAP代码
  7. 记录备份2020-07-13 - 清除多余无用的Windows10环境变量
  8. SAP CRM webclient ui里直接编写原生的JavaScript
  9. SAP云平台API portal里的discover all功能
  10. SAP WebIDE UI5应用的几种启动方式