python3爬虫中引用Queue的实例讲解


Posted in Python onNovember 24, 2020

我们去一个受欢迎的地方买东西,难免会需要排队等待。如果有多个窗口的话,就会有不同队列的产生,当然每个队伍的人数也会出现参差不齐的现象。我们今天所要说的Queue就可以理解成生活中的排队现象。那么结合我们所要用的爬虫知识,应该怎么在Queue中应用呢?接下来就开始今天的内容学习:

队列这种东西大家应该都知道,就是一个先进先出的数据结构,而Python的标准库中提供了一个线程安全的队列,也就是说该模块是适用于多线程编程的先进先出(first-in,first-out,FIFO)数据结构,可以用来在生产者消费者线程之间安全地传递消息或其他数据。它会为调用者处理锁定,使用多个线程可以安全地处理同一个 Queue 实例。Queue 的大小(其中包含的元素个数)可能要受限,以限制内存使用或处理。

在Python 3中要引入Queue和Python 2中引入Queue是不同,引入方式如下:

#python 2
import Queue
# python 3
from queue import Queue

因为是线程安全的,很自然就可以利用Queue来实现一个多线程爬虫咯,而Queue的一些常见操作如下:

# 实例化一个队列,可以在指定队列大小
q = Queue.Queue()
q_50 = Queue.Queue(50) # 指定一个长度为50的队列
# 入队一个数据data
q.put(data)
# 出队并赋值给item
item = q.get()
# 判断队列是否为空,是否满
if q.empty():
  print('队列为空')
if q.full():
print('队列满')

另外,除了普通队列,标准库中还有优先队列和后进先出队列这两个队列,分别为LifoQueue和PriorityQueue,其引用方式与Queue类似。

到此这篇关于python3爬虫中引用Queue的实例讲解的文章就介绍到这了,更多相关python3爬虫中如何引用Queue案例内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Python 相关文章推荐
python异常和文件处理机制详解
Jul 19 Python
读写json中文ASCII乱码问题的解决方法
Nov 05 Python
Windows 64位下python3安装nltk模块
Sep 19 Python
Python 把序列转换为元组的函数tuple方法
Jun 27 Python
python函数声明和调用定义及原理详解
Dec 02 Python
Django多进程滚动日志问题解决方案
Dec 17 Python
详细分析Python可变对象和不可变对象
Jul 09 Python
python打开音乐文件的实例方法
Jul 21 Python
用Python制作mini翻译器的实现示例
Aug 17 Python
Python爬虫之Selenium库的使用方法
Jan 03 Python
selenium3.0+python之环境搭建的方法步骤
Feb 01 Python
Python 调用C++封装的进一步探索交流
Mar 04 Python
python3爬虫中多线程的优势总结
Nov 24 #Python
利用python+ffmpeg合并B站视频及格式转换的实例代码
Nov 24 #Python
python 如何停止一个死循环的线程
Nov 24 #Python
python将下载到本地m3u8视频合成MP4的代码详解
Nov 24 #Python
Python做图像处理及视频音频文件分离和合成功能
Nov 24 #Python
Python调用Redis的示例代码
Nov 24 #Python
基于django和dropzone.js实现上传文件
Nov 24 #Python
You might like
用PHP实现验证码功能
2006/10/09 PHP
php获取远程图片体积大小的实例
2013/11/12 PHP
php使用qr生成二维码的示例分享
2014/01/20 PHP
Yii框架中 find findAll 查找出制定的字段的方法对比
2014/09/10 PHP
PHP中UNIX时间戳和日期间的转换与计算实例
2014/11/19 PHP
你需要知道的JavsScript可以做什么?
2007/06/29 Javascript
event.keyCode键码值表 附只能输入特定的字符串代码
2009/05/15 Javascript
JavaScript 题型问答有答案参考
2010/02/17 Javascript
Javascript类定义语法,私有成员、受保护成员、静态成员等介绍
2011/12/08 Javascript
js利用数组length属性清空和截短数组的小例子
2014/01/15 Javascript
jQuery$命名冲突怎么办如何解决
2014/01/16 Javascript
javascript将异步校验表单改写为同步表单
2015/01/27 Javascript
Backbone.js 0.9.2 源码注释中文翻译版
2015/06/25 Javascript
jQuery实现的AJAX简单弹出层效果代码
2015/11/26 Javascript
javascript html5实现表单验证
2016/03/01 Javascript
js HTML5多媒体影音播放
2016/10/17 Javascript
Vue.js学习示例分享
2017/02/05 Javascript
微信小程序 页面跳转事件绑定的实例详解
2017/09/20 Javascript
layui实现三级导航菜单
2019/07/26 Javascript
layui之table checkbox初始化时选中对应选项的方法
2019/09/02 Javascript
Vue包大小优化的实现(从1.72M到94K)
2021/02/18 Vue.js
[00:43]2016完美“圣”典风云人物:单车宣传片
2016/12/02 DOTA
[40:06]DOTA2亚洲邀请赛 4.3 突围赛 Liquid vs VGJ.T 第一场
2018/04/04 DOTA
python strip() 函数和 split() 函数的详解及实例
2017/02/03 Python
matplotlib调整子图间距,调整整体空白的方法
2018/08/03 Python
pandas dataframe添加表格框线输出的方法
2019/02/08 Python
Python2和Python3中@abstractmethod使用方法
2020/02/04 Python
python等差数列求和公式前 100 项的和实例
2020/02/25 Python
css3实现背景颜色渐变让图片不再是唯一的实现方式
2012/12/18 HTML / CSS
应聘收银员个人的求职信
2013/11/30 职场文书
祖国在我心中演讲稿
2014/01/15 职场文书
一年级小学生评语
2014/04/22 职场文书
安全宣传标语
2014/06/10 职场文书
领导班子党的群众路线教育实践活动对照检查材料
2014/09/25 职场文书
2015年惩防体系建设工作总结
2015/05/22 职场文书
阿里云 Windows server 2019 配置FTP
2022/04/28 Servers