分类
摘要:
工作中最常见的配置文件有四种:普通key=value的配置文件、Json格式的配置文件、HTML格式的配置文件以及YAML配置文件。
这其中以第一种居多,后三种在成熟的开源产品中较为常见,本文只针对第一种配置文件。
一般来说Linux shell下提供了diff命令来比较普通文本类的配置文件,Python的dif... 阅读原文
2019-06-07 15:49:02 阅读(2294) 评论(0)
摘要:
当需要定义常量时,一个办法是用大写变量通过整数来定义 好处是简单,缺点是类型是int,并且仍然是变量 Enum可以把一组相关常量定义在一个class中,且class不可变,而且成员可以直接比较,这样这些相关常量就不会变化了
使用枚举类
from enum import Enum
... 阅读原文
2019-06-07 14:07:01 阅读(2125) 评论(0)
摘要:
一.re模块的查找方法: 1.findall 匹配所有每一项都是列表中的一个元素
import reret = re.findall('\d+','asd鲁班七号21313') # 正则表达式,待匹配的字符串,flag# ret = re.findall('\d','asd鲁班七号21313') # 正则... 阅读原文
2019-06-07 13:44:01 阅读(2093) 评论(0)
摘要:
多线程爬虫
有些时候,比如下载图片,因为下载图片是一个耗时的操作。如果采用之前那种同步的方式下载。那效率肯会特别慢。这时候我们就可以考虑使用多线程的方式来下载图片。
多线程介绍:
多线程是为了同步完成多项任务,通过提高资源使用效率来提高系统的效率。线程是在同一时间需要完成多项任务的时候实现的。最简单的比喻... 阅读原文
2019-06-07 12:45:01 阅读(3313) 评论(0)
摘要:
实例 搜索引擎
一个搜索引擎由搜索器、索引器、检索器和用户接口四个部分组成
搜索器就是爬虫(scrawler),爬出的内容送给索引器生成索引(Index)存储在内部数据库。用户通过用户接口发出询问(query),询问解析后送达检索器,检索器高效检索后,将结果返回给用户。
以下5个文件为爬取的搜索样本... 阅读原文
2019-06-07 11:04:01 阅读(2277) 评论(0)
摘要:
scrapy源码解析参考连接:https://www.jianshu.com/p/d492adf17312 ,直接看大佬的就行了,这里便就不多说了。
今天要学习的是:Scrapy框架中的download middlerware【下载中间件】用法。
一:官方文档中,对下载中间件的解释如下 下载中间件是介于scrap... 阅读原文
2019-06-07 10:20:06 阅读(2009) 评论(0)
摘要:
实现了__iter__()的实例虽能用于for循环,看似像list,但并不能将其当做list来使用,比如,Fib()[5]还是报错 可通过实现__getitem__()方法,;来实现让实例像list那样按照下标取出元素
实现按照下标取元素
class Fib(object):
... 阅读原文
2019-06-07 09:14:02 阅读(1948) 评论(0)
摘要:
如果一个类想被用于for ... in循环,类似list或tuple那样,就必须实现一个__iter__()方法,该方法返回一个迭代对象 然后,Python的for循环就会不断调用该迭代对象的__next__()方法拿到循环的下一个值,直到遇到StopIteration错误时退出循环
class... 阅读原文
2019-06-07 07:54:02 阅读(2222) 评论(0)
摘要:
<1> $.ajax的两种写法:
$.ajax("url",{})
$.ajax({})
<2> $.ajax的基本使用
$.ajax({
url:"//",
data:{a:1,b:2},
type:"GET",
success:fun... 阅读原文
2019-06-07 06:00:04 阅读(2238) 评论(0)
摘要:
当打印一个类的实例时,返回的字符串是对象的地址信息,如<__main__.Student object at 0x109afb310>,很不好看 可通过在类内定义__str__(),这样打印实例时就会返回一个好看的字符串,而且容易看出实例内部重要的数据
定义__str__()
cla... 阅读原文
2019-06-06 23:49:01 阅读(2351) 评论(0)