摘要: 对象关系映射模型是通过面向对象的方式来操作数据库,这就需要对应的关系映射,数据中可以分为库,表,字段信息,一条条数据,而需要用面向对象的关系去对应。于是就有了下面对应关系。 数据库 -- 面向对象模型 表 <--> 类 字段 <--> 类属性 记录 <--> 每个实例 Django中的关系映射 使用 阅读全文
posted @ 2020-06-09 22:45 没有想象力 阅读(791) 评论(0) 推荐(0) 编辑
摘要: python中的mysql驱动(库) python中封装了与mysql服务之间的通讯接口,从而实现在Python程序中简单方法调用就可以实现数据库操作。 连接数据库进行操作需要支持数据库和网络传输的大量协议,直接使用socket连接数据库并进行通信是相当复杂的,所以Python提供了访问数据库的接口 阅读全文
posted @ 2020-06-09 21:19 没有想象力 阅读(638) 评论(0) 推荐(0) 编辑
摘要: 不同源 同源:访问的两个url使用相同协议,相同的域,以及相同的端口才是同源,否则不能算作同源。在访问一个源时,在该源中夹杂了访问另一个源的请求时候,这就是一个跨域的请求。这样的请求会带来风险。浏览器端后根据源的不同的进行数据的隔离,一个域不能获取到其他域中保存的数据 。服务器端为了保证接受的数据是 阅读全文
posted @ 2020-06-09 21:11 没有想象力 阅读(296) 评论(0) 推荐(0) 编辑
摘要: 跨域请求CORS 当我们在一个页面中使用Ajax发送异步请求时,该请求访问的域不在当前域下,浏览器将会对其进行限制,只有ajax请求访问的服务端告诉浏览器该请求的数据可以被该域使用,该ajax访问才能正确的得到数据。 CORS是一个W3C标准,全称是"跨域资源共享,它允许浏览器异步向跨源服务器发出X 阅读全文
posted @ 2020-06-09 21:07 没有想象力 阅读(677) 评论(0) 推荐(0) 编辑
摘要: jQuery jquery功能 HTML元素选取和操作,通过选择器,操作dom树中的各个元素。 css和各种属性:可以获取或者修改获取到的元素的标签的属性值。 HTML DOM遍历和修改: 事件函数:为标签设置各种事件函数 事件对象:当一个事件触发时候,获取一个事件对象,他存在许多的属性值。 jav 阅读全文
posted @ 2020-06-09 21:00 没有想象力 阅读(185) 评论(0) 推荐(0) 编辑
摘要: 集群目标保证 Redis 集群是 Redis 的一个分布式实现,在设计中就需要考虑其服务可用性,稳定性,性能,安全等问题,这也是redis集群需要尽量实现的目标,官网中有以下几点说明。 可扩展性:能够在1000节点时候仍然能够很好的进行扩展且是线性的 无合并操作:合并操作涉及多个键值,而这些键可能处 阅读全文
posted @ 2020-06-09 20:50 没有想象力 阅读(311) 评论(0) 推荐(0) 编辑
摘要: mongodb服务 参考MongoDB中文网 mongodb是一个高效的文档型的Nosql数据库,文档数据内部使用类似于json格式的bson的数据格式,也就是二进制形式json格式。 mongodb服务 centos7下安装 下载MongoDB源码或者使用yum安装,可以到阿里云官网镜像下载该服务 阅读全文
posted @ 2020-06-09 20:48 没有想象力 阅读(402) 评论(0) 推荐(0) 编辑
摘要: redis主从复制 从服务(slave)从主服务(Master)同步更新数据,保持主从数据同步。 主服务提供读写服务,从服务只能提供读服务。 一个主服务可以有多个从服务。 建立主从关系 可以使用三种方式: 开启服务时指定该服务从属于其他redis服务。 redis-server --salveof 阅读全文
posted @ 2020-06-09 20:25 没有想象力 阅读(141) 评论(0) 推荐(0) 编辑
摘要: 官网介绍 Redis 是一个开源(BSD许可)的,内存中的数据结构存储系统,它可以用作数据库、缓存和消息中间件。 它支持多种类型的数据结构,包括: 字符串(strings) 散列(hashes) 列表(lists) 集合(sets) 有序集合(sorted sets) 范围查询, bitmaps:位 阅读全文
posted @ 2020-06-09 20:13 没有想象力 阅读(335) 评论(0) 推荐(0) 编辑
摘要: 动态网页抓取问题 某些网站采用动态网页技术,页面中的数据通过执行js向dom树中动态增加元素,这样的网页我们无法直接从网页源代码中获取数据,因为这是客户端(浏览器)执行js后动态添加的 无头浏览器 一个无界面的浏览器,可以执行与其他浏览器同样的操作,接受网页数据并渲染,执行js文件,动态的生成dom 阅读全文
posted @ 2020-06-09 18:55 没有想象力 阅读(397) 评论(0) 推荐(0) 编辑
摘要: XPath 是一门在 XML 文档中查找信息的语言,可用来在 XML 文档中对元素和属性进行遍历,快速提取xml文档中的的信息,详细的xpath教程参见:https://www.w3school.com.cn/xpath/index.asp。 xpath用法 //任意层次下,/ 根或下一层 //@i 阅读全文
posted @ 2020-06-09 18:47 没有想象力 阅读(2619) 评论(0) 推荐(0) 编辑
摘要: scrapy-redis模块 scrapy-redis是为了实现scrapy的分布式爬取而提供了一个python库,通过更换scrapy的内置组件,将爬取请求队列和item数据放入第三方的redis数据库中,由此可以有多个scrapy进程从redis中读取request数据和写入items数据,实现 阅读全文
posted @ 2020-06-09 18:33 没有想象力 阅读(1226) 评论(0) 推荐(0) 编辑
摘要: scrapy 流程图 Scrap Engine(引擎) 负责控制数据流在系统中所有组件中流动,并在相应动作发生时触发事件,是整个爬虫的调度中心。 调度器( Scheduler) 调度器接收从引擎发送过来的 request,并将他们加入到爬取队列,以便之后引擎请求他们时提供给引擎。初始的爬取URL和后 阅读全文
posted @ 2020-06-09 18:25 没有想象力 阅读(3086) 评论(0) 推荐(1) 编辑
摘要: urllib包 urllib是python3中的一个标准库,它是一个工具包模块,使用该模块我们可以模仿浏览器向服务器发送请求,并获得返回结果数据进行处理。 urllib包分级简单,在该包下5个模块 urllib.request :用于打开和读写url urllib.response:将获取后的内容进 阅读全文
posted @ 2020-06-09 17:38 没有想象力 阅读(478) 评论(0) 推荐(0) 编辑
摘要: Innodb引擎的锁机制 InnoDB与MyISAM的最大不同有两点:一是支持事务(TRANSACTION);二是采用了行级锁 事务的ACID 事务是为了实现业务上完整性而实现了,他可以由多条sql语句组成,这些语句要么全部成功,否则发生任何错误都将会回滚。事务具有4个属性。称为事务的ACID属性 阅读全文
posted @ 2020-06-09 17:13 没有想象力 阅读(261) 评论(0) 推荐(0) 编辑
摘要: 页 从磁盘读取或者写入数据时,我们通常会指定一个缓冲区大小,达到缓冲区域大小才会写入一次数据,较少IO操作次数。同样的从磁盘读取数据时候,就操作系统而言,读取一条较小的数据时,并不是只会返回我们需要的数据,而是会将这个数据前后的部分数据一并读取到内存中,以备之后使用。这个从磁盘读取的最小量的数据被称 阅读全文
posted @ 2020-06-09 16:43 没有想象力 阅读(1266) 评论(0) 推荐(0) 编辑
摘要: 数据库 数据库是按照数据结构来组织,储存,管理数据的仓库。数据库在物理层上有效的利用系统对磁盘的块读取特性,在读取相同磁盘块的同时,尽可能多的加载索引数据,来提高索引命中效率,从而达到减少磁盘IO的读取次数 传统的记录数据的方式使用普通文件的记录,但是这种储存的方式在进行数据 查询时极其不方便,不能 阅读全文
posted @ 2020-06-09 16:11 没有想象力 阅读(280) 评论(0) 推荐(0) 编辑
摘要: 官方提供了socketserver包去方便我们快速的搭建一个服务器框架。 server类 socketserver包提供5个Server类,这些单独使用这些Server类都只能完成同步的操作,他是一个单线程的,不能同时处理各个客户端的请求,只能按照顺序依次处理。 + + | BaseServer | 阅读全文
posted @ 2020-06-09 11:41 没有想象力 阅读(2121) 评论(0) 推荐(0) 编辑
摘要: socket socket 通常被翻译为“套接字”,它是计算机之间进行通信的一种约定或一种方式。通过socket这种约定,一台计算机可以接收其他计算机的数据,也可以向其他计算机发送数据。 Python标准库提供了socket模块来实现这种网络通信。实例化一个socket类便能得到一个socket对象 阅读全文
posted @ 2020-06-09 11:17 没有想象力 阅读(1666) 评论(0) 推荐(0) 编辑
摘要: IO多路复用 O多路复用技术是使用一个可以同时监视多个IO阻塞的中间人去监视这些不同的IO对象,这些被监视的任何一个或多个IO对象有消息返回,都将会触发这个中间人将这些有消息IO对象返回,以供获取他们的消息。 使用IO多路复用的优点在于进程在单线程的情况下同样可以同时处理多个IO阻塞。与传统的多线程 阅读全文
posted @ 2020-06-09 11:03 没有想象力 阅读(392) 评论(0) 推荐(0) 编辑