
python
dragonguai
好奇心很强体育很好的彩笔程序员
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
windows下scrapy框架学习笔记—'scrapy' 不是内部或外部命令
开开心心的安了scrapy等众多神级框架,可是当我满怀期待的试着使用时告诉我它不认识我!不对,是cmd不认识它,这就让我很尴尬,给了你们那么长时间相互了解最后告诉我你们不认识?!WTF!!!好了不扯了,进入正题:在环境变量都具备的情况下竟然识别不出“scrapy startproject demo”,安装时也没有任何问题,唯独使用时掉链子这是很悲哀的一件事。。。有问题就找help,首先我们来看一下...原创 2018-06-11 15:48:12 · 2658 阅读 · 6 评论 -
使用Scrapy-redis实现分布式爬取
Scrapy是一个比较好用的Python爬虫框架,你只需要编写几个组件就可以实现网页数据的爬取。但是当我们要爬取的页面非常多的时候,单个主机的处理能力就不能满足我们的需求了(无论是处理速度还是网络请求的并发数),这时候分布式爬虫的优势就显现出来。而Scrapy-Redis则是一个基于Redis的Scrapy分布式组件。它利用Redis对用于爬取的请求(Requests)进行存储和调度(Schedu...转载 2018-06-11 10:00:28 · 606 阅读 · 0 评论 -
GIL问题的理解
Python中有GIL为什么还需要线程同步? 简单说:线程的锁机制与CPU的锁(GIL)粒度不一样,GIL并不能保证线程安全 单个字节码操作(原子操作)是线程安全的,非原子操作是多字节码操作 所以我理解的GIL只是使一些简单的原子操作变成了线程安全的,而非那些原子操作的过程仍然需要我们自己使用锁机制进行同步 GIL保证的是字节码同一时刻只能被一个线程执行,但是同一个操作可能对应多个字...原创 2018-08-01 13:34:37 · 369 阅读 · 0 评论 -
Python3 垃圾回收(GC)(一)
1. 小整数对象池 整数在程序中的使用非常广泛,Python为了优化速度,使用了小整数对象池, 避免为整数频繁申请和销毁内存空间。 Python 对小整数的定义是 [-5, 257) 这些整数对象是提前建立好的,不会被垃圾回收。在一个 Python 的程序中,所有位于这个范围内的整数使用的都是同一个对象. 同理,单个字母也是这样的。 但是当定义2个相同的字符串时,引用计数为0,触发垃圾回...原创 2018-12-11 11:40:12 · 173 阅读 · 0 评论 -
Python3 垃圾回收(GC) (二)
1. Garbage collection(GC垃圾回收) 现在的高级语言如java,c#等,都采用了垃圾收集机制,而不再是c,c++里用户自己管理维护内存的方式。自己管理内存极其自由,可以任意申请内存,但如同一把双刃剑,为大量内存泄露,悬空指针等bug埋下隐患。 对于一个字符串、列表、类甚至数值都是对象,且定位简单易用的语言,自然不会让用户去处理如何分配回收内存的问题。 python里也同j...原创 2018-12-11 11:44:08 · 246 阅读 · 0 评论