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通过邮件服务器端口发送邮件的方法
Apr 30 Python
使用Python解析JSON数据的基本方法
Oct 15 Python
python多线程之事件Event的使用详解
Apr 27 Python
使用Python写一个量化股票提醒系统
Aug 22 Python
python实现根据文件关键字进行切分为多个文件的示例
Dec 10 Python
Python3远程监控程序的实现方法
Jul 15 Python
python切片(获取一个子列表(数组))详解
Aug 09 Python
详解pyinstaller selenium python3 chrome打包问题
Oct 18 Python
使用pytorch和torchtext进行文本分类的实例
Jan 08 Python
Python实现清理微信僵尸粉功能示例【基于itchat模块】
May 29 Python
Python迭代器协议及for循环工作机制详解
Jul 14 Python
Python中实现一行拆多行和多行并一行的示例代码
Sep 06 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调用mysql存储过程
2007/02/14 PHP
php下判断数组中是否存在相同的值array_unique
2008/03/25 PHP
将时间以距今多久的形式表示,PHP,js双版本
2012/09/25 PHP
php图片加水印原理(超简单的实例代码)
2013/01/18 PHP
PHP abstract 抽象类定义与用法示例
2018/05/29 PHP
PHP+jQuery实现即点即改功能示例
2019/02/21 PHP
PHP远程连接oracle数据库操作实现方法图文详解
2019/04/11 PHP
javascript showModalDialog 多层模态窗口实现页面提交及刷新的代码
2009/11/28 Javascript
JavaScript原型链示例分享
2014/01/26 Javascript
JS实现控制表格只显示行边框或者只显示列边框的方法
2015/03/31 Javascript
js实现大转盘抽奖游戏实例
2015/06/24 Javascript
JQuery中ajax方法访问web服务实例
2015/07/18 Javascript
理解javascript异步编程
2016/01/27 Javascript
vuejs在解析时出现闪烁的原因及防止闪烁的方法
2016/09/19 Javascript
javascript入门之数组[新手必看]
2016/11/21 Javascript
webpack学习--webpack经典7分钟入门教程
2017/06/28 Javascript
深入浅析JS中的严格模式
2018/06/04 Javascript
JavaScript简单实现动态改变HTML内容的方法示例
2018/12/25 Javascript
详解将微信小程序接口Promise化并使用async函数
2019/08/05 Javascript
webpack+express实现文件精确缓存的示例代码
2020/06/11 Javascript
VSCode 添加自定义注释的方法(附带红色警戒经典注释风格)
2020/08/27 Javascript
windows系统中Python多版本与jupyter notebook使用虚拟环境的过程
2019/05/15 Python
python爬虫之爬取百度音乐的实现方法
2019/08/24 Python
pyinstaller 3.6版本通过pip安装失败的解决办法(推荐)
2020/01/18 Python
浅谈Tensorflow加载Vgg预训练模型的几个注意事项
2020/05/26 Python
基于python模拟bfs和dfs代码实例
2020/11/19 Python
Python基于爬虫实现全网搜索并下载音乐
2021/02/14 Python
CSS3制作半透明边框(Facebox)类似渐变
2012/12/09 HTML / CSS
HTML5 使用 sessionStorage 进行页面传值的方法
2018/07/02 HTML / CSS
英国最大的在线蜡烛商店:Candles Direct
2019/03/26 全球购物
新护士岗前培训制度
2014/02/02 职场文书
幼儿园家长寄语
2014/04/02 职场文书
检讨书格式
2015/05/07 职场文书
2016年综治宣传月活动宣传标语口号
2016/03/16 职场文书
微信小程序 WeUI扩展组件库的入门教程
2022/04/21 Javascript
处理canvas绘制图片模糊问题
2022/05/11 Javascript