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 爬虫多线程详解及实例代码
Oct 08 Python
python中pandas.DataFrame的简单操作方法(创建、索引、增添与删除)
Mar 12 Python
django中瀑布流写法实例代码
Oct 14 Python
Pytorch技巧:DataLoader的collate_fn参数使用详解
Jan 08 Python
PyQt5 closeEvent关闭事件退出提示框原理解析
Jan 08 Python
Python实现随机生成任意数量车牌号
Jan 21 Python
将pymysql获取到的数据类型是tuple转化为pandas方式
May 15 Python
python输入中文的实例方法
Sep 14 Python
Python fileinput模块如何逐行读取多个文件
Oct 05 Python
python调用百度API实现人脸识别
Nov 17 Python
opencv深入浅出了解机器学习和深度学习
Mar 17 Python
方法汇总:Python 安装第三方库常用
Apr 26 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的SQL注入过程分析
2012/01/06 PHP
PHP仿博客园 个人博客(1) 数据库与界面设计
2013/07/05 PHP
php+webSoket实现聊天室示例代码(附源码)
2017/02/17 PHP
[原创]php使用strpos判断字符串中数字类型子字符串出错的解决方法
2017/04/01 PHP
yii 框架实现按天,月,年,自定义时间段统计数据的方法分析
2020/04/04 PHP
15款优秀的jQuery导航菜单插件分享
2011/07/19 Javascript
用jQuery中的ajax分页实现代码
2011/09/20 Javascript
Extjs4中Form的使用之本地hiddenfield
2013/11/26 Javascript
javascript实时获取鼠标坐标值并显示的方法
2015/04/30 Javascript
跟我学习javascript创建对象(类)的8种方法
2015/11/20 Javascript
js倒计时抢购实例
2015/12/20 Javascript
JavaScript弹窗基础篇
2016/04/27 Javascript
Bootstrap零基础入门教程(二)
2016/07/18 Javascript
jQuery纵向导航菜单效果实现方法
2016/12/19 Javascript
Express与NodeJs创建服务器的两种方法
2017/02/06 NodeJs
angularjs中回车键触发某一事件的方法
2017/04/24 Javascript
快速搭建React的环境步骤详解
2017/11/06 Javascript
使用Ajax和Jquery配合数据库实现下拉框的二级联动的示例
2018/01/25 jQuery
Ant Design Vue table中列超长显示...并加提示语的实例
2020/10/31 Javascript
详解Python中time()方法的使用的教程
2015/05/22 Python
Python数据结构之哈夫曼树定义与使用方法示例
2018/04/22 Python
python json.loads兼容单引号数据的方法
2018/12/19 Python
Python pandas实现excel工作表合并功能详解
2019/08/29 Python
基于python判断字符串括号是否闭合{}[]()
2020/09/21 Python
详解HTML5布局和HTML5标签
2020/10/26 HTML / CSS
联想新加坡官方网站:Lenovo Singapore
2017/10/24 全球购物
历史学专业毕业生求职信
2013/09/27 职场文书
本科生学习总结的自我评价
2013/10/02 职场文书
临床护理求职信
2014/04/26 职场文书
仓库管理计划书
2014/05/04 职场文书
学校党的群众路线教育实践活动总结报告
2014/07/03 职场文书
煤矿安全协议书
2014/08/20 职场文书
学校运动会广播稿100条
2014/09/14 职场文书
优秀共产党员事迹材料2016
2016/02/29 职场文书
php访问对象中的成员的实例方法
2021/11/17 PHP
详解Spring Bean的配置方式与实例化
2022/06/10 Java/Android