摘要: 结果是user,这个就是动态的创建出来的类。 不过在此做一个补充说明:很多人不明白为什么使用 因为这样会保证这个脚本被调用时候不会被自动执行 但这样动态的创建类也不是太灵活,那就可以采用type类了 type一般用来获取某一个对象的类型的,第二点就是type可以用来创建类的 如何动态的创建类呢? 为 阅读全文
posted @ 2018-12-05 00:02 人生苦短use,what? 阅读(164) 评论(0) 推荐(0) 编辑
摘要: 1,随机更换 user-agent: 将足够多的user-agent放在settings中,在parse方法中调用 缺点:每一个request中都要调用这个方法 这个是scrapy的流程图。 既然每一次下载都需要通过中间件,那么为什么不写在中间件里面呢? scrapy怎么写呢? 在官方文档中可以知道 阅读全文
posted @ 2018-12-04 21:30 人生苦短use,what? 阅读(242) 评论(0) 推荐(0) 编辑
摘要: 只要是类中实现任一个__get__,__set__ ,__delete__方法中的任意一个方法,他都是属性描述符的对象, 通过属性描述符就可以控制赋值的属性。 数据属性描述符和非数据属性描述符的区别: 1,数据属性描述符实现三个方法,但是非数据属性描述符仅实现__get__ 2,在类中且属于属性描述 阅读全文
posted @ 2018-12-03 21:25 人生苦短use,what? 阅读(108) 评论(0) 推荐(0) 编辑
摘要: 什么叫魔术方法: 在python中定义以双下划线开头,有一些python自定义的函数,并且以双下划线为结尾的函数叫做魔法函数 当中间定义了__getitem__方法,就将Company变成了一个可迭代对象,调用for循环时,python会一个一个尝试,直到报错。所以打印print(len(compa 阅读全文
posted @ 2018-12-02 21:57 人生苦短use,what? 阅读(157) 评论(0) 推荐(0) 编辑
摘要: 为什么不使用FBV,因为CBV重用性很高 先看一个例子: 通过上面我们可以看到的是先从django中引入View类,之后通过json的方式返回。这似乎没有问题,只要去掉add_time 如果json序列化中有时间类型的话,JSON就会失败,运行就会报错: 去掉之后返回也必须指定content_typ 阅读全文
posted @ 2018-11-27 21:11 人生苦短use,what? 阅读(142) 评论(0) 推荐(0) 编辑
摘要: 目标爬取拉钩: 先进入虚拟环境workon …… 先介绍一个命令 如果不指定默认是basic 新建拉勾网的爬虫 CrawlSpider是scrapy提供一个通用Spider。在Spider里面,我们可以指定一些爬取规则来实现页面的提取,这些爬取规则由一个专门的数据结构Rule表示。Rule里面包含提 阅读全文
posted @ 2018-11-27 21:11 人生苦短use,what? 阅读(171) 评论(0) 推荐(0) 编辑
摘要: 首先安装webstorm:http://www.jetbrains.com/webstorm/ (推荐) 再安装node.js:https://nodejs.org/en/download/ (必须的,npm依赖于node.js) 由于npm速度问题,选择淘宝镜像: 命令如下:npm install 阅读全文
posted @ 2018-11-20 23:51 人生苦短use,what? 阅读(203) 评论(0) 推荐(0) 编辑
摘要: 1,我们常见的数据结构有哪些是序列类 序列类型的分类: ① 容器序列:list,tuple,deque(可以防止任意的类型的容器) ② 扁平序列:str,bytes,bytearray,array.array(可以使用 for循环遍历的) ③ 可变序列:list,deque,bytearray,ar 阅读全文
posted @ 2018-11-18 22:40 人生苦短use,what? 阅读(158) 评论(0) 推荐(0) 编辑
摘要: 1,鸭子类型和多态 当看到一只鸟走起来像鸭子,游泳起来像鸭子,叫起来也像鸭子,那这只鸟就是鸭子 是不是比较混乱,看个例子: 结果如下: 在这个地方三个类实现了同一个方法,这样就是一种多态,什么叫鸭子类型呢,就是所有类都实现共同的方法,所有的方法名称都一样,这样就是鸭子类型 2,类的三个方法: 所谓静 阅读全文
posted @ 2018-11-17 23:04 人生苦短use,what? 阅读(160) 评论(0) 推荐(0) 编辑
摘要: 1,Json open_spider 当spider开启时,这个方法被调用 close_spider 当scrapy关闭时,这个方法会被调用。 最主要的是process_item这个方法执行了数据库的插入操作 2,MYSQL 使用MySQLTwistedPipline是因为爬取速度远超插入关系型数据 阅读全文
posted @ 2018-11-13 21:05 人生苦短use,what? 阅读(190) 评论(0) 推荐(0) 编辑