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连接MySQL数据库实例分析
May 12 Python
编写自定义的Django模板加载器的简单示例
Jul 21 Python
Python数据类型之Set集合实例详解
May 07 Python
关于不懂Chromedriver如何配置环境变量问题解决方法
Jun 12 Python
python3+PyQt5 数据库编程--增删改实例
Jun 17 Python
python实现PID算法及测试的例子
Aug 08 Python
Django如何实现上传图片功能
Aug 16 Python
如何在sublime编辑器中安装python
May 20 Python
把Anaconda中的环境导入到Pycharm里面的方法步骤
Oct 30 Python
详解Python中如何将数据存储为json格式的文件
Nov 18 Python
Python爬虫实战案例之爬取喜马拉雅音频数据详解
Dec 07 Python
详解Open Folder as PyCharm Project怎么添加的方法
Dec 29 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处理图片变得简单 基于gb库的图片处理类附实例代码下载
2011/05/17 PHP
关于php正则匹配汉字的方法介绍
2013/04/25 PHP
PHP实现页面静态化的超简单方法
2016/09/06 PHP
jQuery+php简单实现全选删除的方法
2016/11/28 PHP
TP - 比RBAC更好的权限认证方式(Auth类认证)
2021/03/09 PHP
window.location.hash 使用说明
2010/11/08 Javascript
使用iojs的jsdom库实现同步系统时间
2015/04/20 Javascript
JavaScript中的setUTCDate()方法使用详解
2015/06/11 Javascript
Angularjs使用ng-repeat中$even和$odd属性的注意事项
2016/12/31 Javascript
Vue实现动态响应数据变化
2017/04/28 Javascript
JavaScript读写二进制数据的方法详解
2018/09/09 Javascript
angular多语言配置详解
2019/05/16 Javascript
[01:56]无止竞 再出发——中国军团出征2017年DOTA2国际邀请赛
2017/07/05 DOTA
Python列表切片用法示例
2017/04/19 Python
对python opencv 添加文字 cv2.putText 的各参数介绍
2018/12/05 Python
Python多项式回归的实现方法
2019/03/11 Python
python实现在函数中修改变量值的方法
2019/07/16 Python
python3.7 利用函数os pandas利用excel对文件名进行归类
2019/09/29 Python
pytorch中的上采样以及各种反操作,求逆操作详解
2020/01/03 Python
Python 面向对象之类class和对象基本用法示例
2020/02/02 Python
Python如何访问字符串中的值
2020/02/09 Python
浅谈python print(xx, flush = True) 全网最清晰的解释
2020/02/21 Python
Python 如何查找特定类型文件
2020/08/17 Python
python中把元组转换为namedtuple方法
2020/12/09 Python
JBL澳大利亚官方商店:扬声器、耳机和音响系统
2018/05/24 全球购物
哈曼俄罗斯官方网上商店:Harman.club
2020/07/24 全球购物
银行办理业务介绍信
2014/01/18 职场文书
元旦晚会感言
2014/03/12 职场文书
城管大队整治方案
2014/05/06 职场文书
小学生母亲节演讲稿
2014/05/07 职场文书
会计师事务所实习证明
2014/11/16 职场文书
2014年公路养护工作总结
2014/12/04 职场文书
内勤岗位职责
2015/02/10 职场文书
2015年幼儿教师个人工作总结
2015/05/20 职场文书
毕业论文答辩开场白和结束语
2015/05/27 职场文书
详解MongoDB的条件查询和排序
2021/06/23 MongoDB