![](https://img-blog.csdnimg.cn/20201014180756928.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
======python======
文章平均质量分 73
EmpGro
这个作者很懒,什么都没留下…
展开
-
生产者消费者模型中Queue理解
在生产者消费者模型中,Queue用作两者之间的缓冲 但是由于Queue的内在机理中包含着自动执行wait、notify等功能的机制,于是单从程序代码上看起来会很奇怪。原创 2017-11-01 16:49:45 · 392 阅读 · 0 评论 -
布隆过滤器(Bloom Filter)原理及python实现
布隆过滤器布隆过滤器是一种概率空间高效的数据结构。它与hashmap非常相似,用于检索一个元素是否在一个集合中。它在检索元素是否存在时,能很好地取舍空间使用率与误报比例。正是由于这个特性,它被称作概率性数据结构(probabilistic data structure)。空间效率我们来仔细地看看它的空间效率。如果你想在集合中存储一系列的元素,有很多种不同的做法。你可以把数据存储在has转载 2017-09-27 10:02:53 · 1710 阅读 · 0 评论 -
http中get post简析
Http定义了与服务器交互的不同方法,最基本的方法有4种,分别是GET,POST,PUT,DELETE。URL全称是资源描述符,我们可以这样认为:一个URL地址,它用于描述一个网络上的资源,而HTTP中的GET,POST,PUT,DELETE就对应着对这个资源的查,改,增,删4个操作。到这里,大家应该有个大概的了解了,GET一般用于获取/查询资源信息,而POST一般用于更新资源信息。 1.根转载 2017-09-27 11:09:30 · 324 阅读 · 0 评论 -
常见的http响应头内容介绍
下面是一些最常见的请求头 Accept:浏览器可接受的MIME类型。Accept-Charset:浏览器可接受的字符集。Accept-Encoding:浏览器能够进行解码的数据编码方式,比如gzip。Servlet能够向支持gzip的浏览器返回经gzip编码的HTML页面。许多情形下这可以减少5到10倍的下载时间。Accept-Language:浏览器所希望的语言种类,当服务器能够转载 2017-09-27 13:54:26 · 2048 阅读 · 0 评论 -
【爬虫学习1】正则表达式加Requests爬取猫眼电影排行
正则表达式加Requests爬取猫眼电影排行学习慕课网视频的课后总结http://study.163.com/course/courseMain.htm?courseId=1003735019正则表达式加Requests爬取猫眼电影排行Requests获取网页数据正则表达式匹配数据正则表达式学习参看这里数据格式化多页面爬取保存为文件Requests获取网页数据运用Requests获原创 2017-09-28 16:21:08 · 1551 阅读 · 1 评论 -
【爬虫学习2】Requests cookies爬取知乎个人timeline
上次用Requests爬取了静态网页-正则表达式加Requests爬取猫眼电影排行 这次想尝试使用requests.Session进行cookie登录爬取网页内容 -全部代码见于我的Git准备素材新建工程及文件获取cookies和headers编写爬虫载入并格式化cookis载入并格式化headers获取网页并保存保存网页的目的一个注意正则表达式匹配一小技巧获取结原创 2017-10-04 13:01:05 · 828 阅读 · 0 评论 -
【爬虫学习3】Python爬取动态页面思路(一)
之前在爬取知乎timeline内容时,因为动态加载只爬取到了少量内容,于是研究了下对动态加载页面的爬取。这篇文章主要是对非加密的ajax异步加载内容的爬取,顺便加入了一些json的知识。然鹅很不幸知乎是加密的,所以这个办法并不能解决问题。计划试试selenium+PhantomJS来解决知乎的问题,这个就看下一篇文章了。全部代码见于我的GitHub页面原创 2017-10-16 17:13:18 · 3914 阅读 · 1 评论 -
【爬虫学习4】Python爬取动态页面思路(二)
在前之前文章中尝试用简单的Requests爬取知乎timeline时发现动态加载内容无法成功爬取,尝试分析数据包来爬取也没有成功,于是最后在这里使用selenium来尝试,终于成功。全部代码见于我的[Git](https://github.com/EmpGro/Selsnium4Zhihu)原创 2017-10-20 16:05:06 · 583 阅读 · 0 评论 -
【爬虫学习5】使用BeautifulSoup改进对知乎的爬取
在上一篇文章“使用selenium爬取知乎timeline“时,碰到一个问题: 知乎的timeline中得news有三类: 这三类都是分别包含在<div class='Card TopstoryItem TopstoryItem--experimentExpand TopstoryItem--experimentButton'>...</div>这样一个card里面,但是div内部具体实原创 2017-10-22 16:20:00 · 644 阅读 · 0 评论 -
【爬虫学习6】爬虫自动获取并使用代理ip
当同一ip短时间内多次链接同一网站,很可能导致ip被封,所以需要利用代理ip防止封禁。代理ip可以通过百度很容易的获取,于是这里使用Requests自动爬取代理网站上的ip,并验证是否可用,最后在利用代理建立一个简单的爬虫。-本文全部代码见于我的Git主要思路1.从代理网站爬取IP地址及端口号并存储2.验证ip能否使用3.格式化ip地址4.在requests中使用代理ip爬网站原创 2017-10-24 16:45:29 · 9528 阅读 · 4 评论 -
【多进程与多线程】为什么在Python里推荐使用多进程而不是多线程?
转载自转载地址最近在看Python的多线程,经常我们会听到老手说:“Python下多线程是鸡肋,推荐使用多进程!”,但是为什么这么说呢? 要知其然,更要知其所以然。所以有了下面的深入研究: 首先强调背景:1. GIL是什么? GIL的全称是Global Interpreter Lock(全局解释器锁),来源是python设计之初的考虑,为了数据安全所做的决定。转载 2017-10-25 15:25:12 · 1265 阅读 · 0 评论 -
【多进程与多线程】threading中setDaemon与join
在threading中setDaemon和join都是用来设置等待 首先要明确的是: 假设子线程是t 无论是t.setDaemon() 还是 t.join的等待都是相对于主线程来说的。.join()t.join()的作用是,当t在执行时,主线程在join处暂停,只有当t结束运行时,才继续执行join下面的语句 如以下程序:import threadingfrom time import c原创 2017-10-26 17:50:41 · 424 阅读 · 0 评论 -
python队列操作
创建一个“队列”对象import Queuemyqueue = Queue.Queue(maxsize = 10)Queue.Queue类即是一个队列的同步实现。队列长度可为无限或者有限。可通过Queue的构造函数的可选参数maxsize来设定队列长度。如果maxsize小于1就表示队列长度无限。将一个值放入队列中myqueue.put(10)调用队列对象的put()方法在转载 2017-09-27 09:35:03 · 6843 阅读 · 0 评论