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 相关文章推荐
wxpython 最小化到托盘与欢迎图片的实现方法
Jun 09 Python
Python中optionParser模块的使用方法实例教程
Aug 29 Python
python实现在pickling的时候压缩的方法
Sep 25 Python
跟老齐学Python之让人欢喜让人忧的迭代
Oct 02 Python
Python实现list反转实例汇总
Nov 11 Python
Python制作exe文件简单流程
Jan 24 Python
python函数的作用域及关键字详解
Aug 20 Python
浅谈pytorch grad_fn以及权重梯度不更新的问题
Aug 20 Python
pytorch中tensor.expand()和tensor.expand_as()函数详解
Dec 27 Python
详解python tkinter模块安装过程
Jan 06 Python
pandas 操作 Excel操作总结
Mar 31 Python
Pytest中skip和skipif的具体使用方法
Jun 30 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中使用addslashes函数报错问题的解决方法
2013/02/06 PHP
php操作(删除,提取,增加)zip文件方法详解
2015/03/12 PHP
PHP 在数组中搜索给定的简单实例 array_search 函数
2016/06/13 PHP
php封装的pdo数据库操作工具类与用法示例
2019/05/08 PHP
JavaScript表达式:URL 协议介绍
2013/03/10 Javascript
UpdatePanel和Jquery冲突的解决方法
2013/04/01 Javascript
javascript自定义startWith()和endWith()的两种方法
2013/11/11 Javascript
浅析document.ready和window.onload的区别讲解
2013/12/18 Javascript
jquery.Ajax()方法调用Asp.Net后台的方法解析
2014/02/13 Javascript
Jquery实现简单的轮播效果(代码管用)
2016/03/14 Javascript
谈一谈js中的执行环境及作用域
2016/03/30 Javascript
PHP抓取HTTPS内容和错误处理的方法
2016/09/30 Javascript
jQuery弹出层插件popShow用法示例
2017/01/23 Javascript
Javascript中类式继承和原型式继承的实现方法和区别之处
2017/04/25 Javascript
微信小程序分页加载的实例代码
2017/07/11 Javascript
详解nuxt sass全局变量(公共scss解决方案)
2018/06/27 Javascript
Vue中JS动画与Velocity.js的结合使用
2019/02/13 Javascript
jQuery实现消息弹出框效果
2019/12/10 jQuery
[07:09]2014DOTA2国际邀请赛-Newbee再次发威成功晋级决赛
2014/07/19 DOTA
批量将ppt转换为pdf的Python代码 只要27行!
2018/02/26 Python
tensorflow实现图像的裁剪和填充方法
2018/07/27 Python
Python使用combinations实现排列组合的方法
2018/11/13 Python
Python中关于浮点数的冷知识
2019/09/22 Python
python实现飞机大战项目
2020/03/11 Python
PyCharm 在Windows的有用快捷键详解
2020/04/07 Python
利用CSS3实现圆角的outline效果的教程
2015/06/05 HTML / CSS
百度软件工程师职位
2013/02/14 面试题
毕业生的自我评价
2013/12/30 职场文书
大学生实习感言
2014/01/16 职场文书
政府绩效管理实施方案
2014/05/04 职场文书
学校党的群众路线教育实践活动总结报告
2014/07/03 职场文书
党在我心中的演讲稿
2014/09/13 职场文书
小学师德师风整改措施
2014/10/27 职场文书
父母教会我观后感
2015/06/17 职场文书
趣味运动会标语口号
2015/12/26 职场文书
Win11使用CAD卡顿或者致命错误怎么办?Win11无法正常使用CAD的解决方法
2022/07/23 数码科技