01 2019 档案

摘要:一、安装selenium和chromedriver 二、安装PhantomJS 三、介绍 selenium最初是一个测试工具,而爬虫中使用它主要是为了解决requests无法直接执行JavaScript代码的问题 selenium本质是通过驱动浏览器,完全模拟浏览器的操作,比如跳转、输入、点击、下拉 阅读全文
posted @ 2019-01-24 14:26 st--st 阅读(220) 评论(0) 推荐(0)
摘要:Beautiful Soup提供一些简单的、python式的函数用来处理导航、搜索、修改分析树等功能。它是一个工具箱,通过解析文档为用户提供需要抓取的数据,因为简单,所以不需要多少代码就可以写出一个完整的应用程序。 一、安装 二、使用 三、遍历文档树 获取标签的文本 tag对象 四、五种过滤器 fi 阅读全文
posted @ 2019-01-24 10:37 st--st 阅读(186) 评论(0) 推荐(0)
摘要:使用Xpath模块 def get_page(url): import requests headers = {"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) 阅读全文
posted @ 2019-01-23 11:03 st--st 阅读(441) 评论(0) 推荐(0)
摘要:response是响应的对象 response.text # 返回的是字节,数据的原内容response.content # 返回的是字符串,默认是utf-8解码 重定向:浏览器发送请求,服务器返回重定向的状态码和location,没有响应体。浏览器会自动再发送给location的url一次请求,才 阅读全文
posted @ 2019-01-22 20:57 st--st 阅读(651) 评论(0) 推荐(0)
摘要:AES加密 注意: 1.密钥必须是16个字节,加密的文本必须是16字节的倍数。 2.加密的文本是str类型,得到的加密后的结果是bytes类型。 AES解密 注意: 1.解密的文本必须是bytes类型,而且是16的倍数 2.解密后的结果是bytes类型,记得去除补全的字节,获取真正的数据 3.将数据 阅读全文
posted @ 2019-01-22 08:55 st--st 阅读(1664) 评论(0) 推荐(0)
摘要:一、Content-Type Content-Type,内容类型,一般是指网页中存在的Content-Type,用于定义网络文件的类型和网页的编码,决定浏览器将以什么形式、什么编码读取这个文件。Content-Type属性指定请求和响应的HTTP内容类型。如果未指定 ContentType,默认为t 阅读全文
posted @ 2019-01-21 20:39 st--st 阅读(166) 评论(0) 推荐(0)
摘要:一、爬虫介绍 网络爬虫,即Web Spider,是一个很形象的名字。如果把互联网比喻成一个蜘蛛网,那么Spider就是在网上爬来爬去的蜘蛛。网络蜘蛛是通过网页的链接地址来寻找网页的。从网站某一个页面(通常是首页)开始,读取网页的内容,找到在网页中的其它链接地址,然后通过这些链接地址寻找下一个网页,这 阅读全文
posted @ 2019-01-21 20:12 st--st 阅读(211) 评论(0) 推荐(0)
摘要:客户端向服务器发送请求时,在请求头添加自定义的字符串 客户端的加密方式 1.对key+time进行md5加密 2.发送的时候的格式为md5_key|time,将时间也发送过去 服务器端验证 1.获取加密的字符串,md5_key | time 2.判断时间time是否超时 3.验证md5_key 4. 阅读全文
posted @ 2019-01-21 11:21 st--st 阅读(194) 评论(0) 推荐(0)
摘要:saltstack 实现一个快速的远程执行系统 saltstack的运行方式: Local 本地运行,交付管理 Master/Minion <<< 常用方式 Salt SSH 不需要客户端 salt部署基本架构: 主要区分是salt-master和salt-minion,顾名思义master是中心控 阅读全文
posted @ 2019-01-19 11:46 st--st 阅读(202) 评论(0) 推荐(0)
摘要:利用dockerfile定制镜像 构建一个Flask程序的镜像 阅读全文
posted @ 2019-01-17 20:42 st--st 阅读(313) 评论(0) 推荐(0)
摘要:搭建私有仓库 上传成功!!! 阅读全文
posted @ 2019-01-17 19:58 st--st 阅读(162) 评论(0) 推荐(0)
摘要:容器允许的概念 1.一个容器最好只允许一个应用 2.进行最大程度的松耦合 3.一个容器挂了,不会影响其他的应用程序 4.微服务(docker,etcd,rpc,k8s) 查看系统的版本 创建镜像、导入导出镜像 新命令 创建容器且随机端口映射 创建容器且指定端口映射 docker镜像推送和下载 阅读全文
posted @ 2019-01-17 11:54 st--st 阅读(304) 评论(0) 推荐(0)
摘要:docker容器必须有后台进程在运行,如果docker容器内没有任务在运行中,容器就退出 docker容器必须有后台进程在运行,如果docker容器内没有任务在运行中,容器就退出 docker容器必须有后台进程在运行,如果docker容器内没有任务在运行中,容器就退出 一、docker的安装 二、查 阅读全文
posted @ 2019-01-16 17:40 st--st 阅读(180) 评论(0) 推荐(0)
摘要:一、docker的应用场景 web应用的自动化打包和发布 自动化测试和持续集成、发布 在服务型环境中部署和调整数据库或其他应用 二、docker介绍 自从用上docker容器后,可以实现开发、测试和生产环境的统一化和标准化。 镜像作为标准的交付件,可在开发、测试和生产环境上以容器来运行,最终实现三套 阅读全文
posted @ 2019-01-16 16:35 st--st 阅读(168) 评论(0) 推荐(0)
摘要:redis-cluster集群搭建 分布式数据库首要解决把整个数据集按照分区规则映射到多个节点的问题,即把数据集划分到多个节点上,每个节点负责整个数据的一个子集。 常见的分区规则有哈希分区和顺序分区。Redis Cluster采用哈希分区规则,因此接下来会讨论哈希分区规则。 节点取余分区 一致性哈希 阅读全文
posted @ 2019-01-16 16:24 st--st 阅读(128) 评论(0) 推荐(0)
摘要:# Redis 配置文件 # 当配置中需要配置内存大小时,可以使用 1k, 5GB, 4M 等类似的格式,其转换方式如下(不区分大小写) # # 1k => 1000 bytes # 1kb => 1024 bytes # 1m => 1000000 bytes # 1mb => 1024*1024 bytes # 1g => 1000000000 bytes # 1gb => 1024*10... 阅读全文
posted @ 2019-01-16 14:45 st--st 阅读(270) 评论(0) 推荐(0)
摘要:Redis-Sentinel是redis官方推荐的高可用性解决方案,当用redis作master-slave的高可用时,如果master本身宕机,redis本身或者客户端都没有实现主从切换的功能。而redis-sentinel就是一个独立运行的进程,用于监控多个master-slave集群,自动发现 阅读全文
posted @ 2019-01-16 14:45 st--st 阅读(130) 评论(0) 推荐(0)
摘要:要求:不重启redis的情况下,将RDB数据切换到AOF数据中 准备,配置文件已支持RDB持久化 操作 阅读全文
posted @ 2019-01-15 20:44 st--st 阅读(416) 评论(0) 推荐(0)
摘要:Redis实现了主从同步,但是主库挂死了,如何处理 方案:切换主库的身份 切换完成! 阅读全文
posted @ 2019-01-15 20:33 st--st 阅读(1791) 评论(0) 推荐(0)
摘要:Redis是一种内存型数据库,一旦服务器进程退出,数据库的数据就会丢失,为了解决这个问题,Redis提供了两种持久化的方案,将内存中的数据保存到磁盘中,避免数据的丢失。 方案一:RDB;基于快照的持久化,速度更快,一般用作备份,主从复制也是依赖于rdb持久化功能 方案二:AOF;以追加的方式记录re 阅读全文
posted @ 2019-01-15 17:54 st--st 阅读(205) 评论(0) 推荐(0)
摘要:主从同步原理 1. 从服务器向主服务器发送 SYNC 命令。2. 接到 SYNC 命令的主服务器会调用BGSAVE 命令,创建一个 RDB 文件,并使用缓冲区记录接下来执行的所有写命令。3. 当主服务器执行完 BGSAVE 命令时,它会向从服务器发送 RDB 文件,而从服务器则会接收并载入这个文件。 阅读全文
posted @ 2019-01-15 17:37 st--st 阅读(200) 评论(0) 推荐(0)
摘要:应用场景: 聊天、群公告 订阅和发布 支持正则的频道订阅 psubscribe 支持正则的频道 publish channel 消息 阅读全文
posted @ 2019-01-15 17:15 st--st 阅读(152) 评论(0) 推荐(0)
摘要:一、基本权限命令 二、数据库权限设置 三、数据库的备份和恢复 四、主从同步 主从同步实现读写分离 master --> 可读可写数据 slave --> 可读数据 主从机制实现原理 2.master主库创建并授权同步的用户 3.slave从库配置 5.注意事项 1.从库配置后退出root用户,使用普 阅读全文
posted @ 2019-01-15 17:08 st--st 阅读(168) 评论(0) 推荐(0)
摘要:思路: 一份默认配置,一份用户自定义配置,将两者结合,自定义优先级大于默认配置 目录结构 ''' 用户自定义的配置文件,settings.py ''' USER = 'xiaoming' PASSWORD = '123' ''' 系统默认配置文件,global_settings.py ''' TEL 阅读全文
posted @ 2019-01-15 08:42 st--st 阅读(210) 评论(0) 推荐(0)
摘要:一、通过agent的方式 原理:服务器定制执行py文件通过subprocess模块采集数据发送给数据收集的机器 数据收集的机器:192.168.11.62 服务器:192.168.11.169 数据收集的机器创建Django项目 服务器192.168.11.169运行的代码 运行命令 :python 阅读全文
posted @ 2019-01-14 20:37 st--st 阅读(574) 评论(0) 推荐(0)
摘要:一、安装python3 二、下载node并解压 三、添加环境变量 四、安装虚拟环境工具virtualenvwrapper 五、源码安装redis 六、部署前端 七、部署后端 八、nginx的配置 九、安装并使用supervisor管理后端项目 部署完成!!! 阅读全文
posted @ 2019-01-14 10:43 st--st 阅读(344) 评论(0) 推荐(0)
摘要:nginx + virtualenv + uwsgi + django + mysql + supervisor 部署项目 一、安装Python3 二、安装MariaDB,并授权远程 三、导出数据库 四、使用xftp或者winSCP传入项目和数据库 五、导入数据库 六、修改项目的settings.p 阅读全文
posted @ 2019-01-13 17:42 st--st 阅读(431) 评论(0) 推荐(0)
摘要:mkvirtualenv --no-site-packages --python=C:\Python36\python.exe MyCrawler 阅读全文
posted @ 2019-01-12 12:58 st--st 阅读(136) 评论(0) 推荐(0)
摘要:路由Urls path方法:采用双尖括号<变量类型:变量名>或<变量名>传递,例如<int:id>, <slug:slug>或<username> re_path方法: 采用命名组(?P<变量名>表达式)的方式传递参数。 视图Views get_object_or_404方法,它会默认的调用djan 阅读全文
posted @ 2019-01-12 11:48 st--st 阅读(140) 评论(0) 推荐(0)
摘要:一、反向代理 准备两台机器,一台是nginx的反向代理服务器,一台是普通的web网站 反向代理服务器配置 web服务器配置 二、集群 集群即多台服务器合作工作 集群的特点: 高性能 价格有效性 可伸缩性 高可用性 透明性 三、负载均衡的实现 服务器A:nginx负载均衡 服务器B:web服务器 服务 阅读全文
posted @ 2019-01-11 19:39 st--st 阅读(180) 评论(0) 推荐(0)
摘要:一、安装 二、目录分析 conf 存放nginx所有配置文件的目录,主要nginx.conf html 存放nginx默认站点的目录,如index.html、error.html等 logs 存放nginx默认日志的目录,如error.log access.log sbin 存放nginx主命令的目 阅读全文
posted @ 2019-01-11 16:55 st--st 阅读(251) 评论(0) 推荐(0)
摘要:一、nginx的优势 支持高并发资源消耗少可以做http反向代理和负载均衡支持异步网络i/o事件模型epoll 二、安装nginx的依赖包 三、下载nginx 四、解压缩 五、释放编译文件,生成Makefile 六、编译安装 七、启动 阅读全文
posted @ 2019-01-11 15:13 st--st 阅读(200) 评论(0) 推荐(0)
摘要:若想在同一个服务器上,存在多个不同的解析器版本,使用虚拟环境 1.安装虚拟环境 2.创建虚拟环境 3.激活虚拟环境 4. 测试 5.退出虚拟环境 阅读全文
posted @ 2019-01-10 20:13 st--st 阅读(2719) 评论(0) 推荐(0)
摘要:1.下载redis源码包 2.解压源码包 3.编译安装 4.测试启动redis 5.redis的安全配置 a.自定义配置文件 b.启动redis服务端并指定配置文件 c. 连接redis数据库 测试 阅读全文
posted @ 2019-01-10 20:03 st--st 阅读(114) 评论(0) 推荐(0)
摘要:1.新增mariadb的yum源 2.yum下载安装 3.启动并设置开启启动mariadb 4.设置中文编码 5.初始化mariadb 6.重启mariadb 7.测试连接并查看mariadb的编码 阅读全文
posted @ 2019-01-10 19:40 st--st 阅读(114) 评论(0) 推荐(0)
摘要:退出所有的虚拟环境,在物理环境下安装 1.下载安装virtualenvwrapper 2.查看python3的文件和virtualenvwrapper.sh的路径 3.修改linux的当前用户的配置文件~/.bashrcvim ~/.bashrc 配置解释 4.退出当前会话,重新登陆 登陆后会加载一 阅读全文
posted @ 2019-01-10 17:48 st--st 阅读(2225) 评论(0) 推荐(0)
摘要:使用源码包安装python3.6 1.安装所需的依赖包 gcc 编辑工具 python-devel python开发包 openssl-devel 用于python的ssl模块,https加密通信模块 sqlite-devel 轻量级数据库的开发包 2.下载python3.6的源码包 3.解压源码包 阅读全文
posted @ 2019-01-10 17:21 st--st 阅读(163) 评论(0) 推荐(0)
摘要:Xshell快捷键 基础命令 [root@localhost ~]# 修改变量提示符“[root@localhost ~]# ” PS1="[\u@\h \W]\$" 修改命令的别名 往文件追加内容 以树状图查看目录结构,需要安装tree 基础命令2 为何能远程连接linux服务器 1.服务器运行着 阅读全文
posted @ 2019-01-08 20:54 st--st 阅读(465) 评论(0) 推荐(0)
摘要:一、颜色分类 蓝色:文件夹 绿色:可执行文件 白色:普通文件 二、目录 三、基础命令 四、快捷键 五、补充 六、环境变量 PATH PATH(一定是大写的)这个变量是由一堆目录组成,分隔符是":"号,而不同于windows的";"号。 七、绝对路径于相对路径 绝对路径:由根目录(/)为开始写起的文件 阅读全文
posted @ 2019-01-07 16:38 st--st 阅读(1009) 评论(0) 推荐(0)
摘要:linux目录结构 linux没有盘符的概念,只有一个统一的入口 根目录 ”/“,且目录分隔符也是"/",有区别于windows的反斜杠"\" /bin:bin是Binary的缩写, 这个目录存放着最经常使用的命令。 /boot:这里存放的是启动Linux时使用的一些核心文件,包括一些连接文件以及镜 阅读全文
posted @ 2019-01-07 16:35 st--st 阅读(371) 评论(0) 推荐(0)
摘要:一、服务器 服务器就是性能超强的主机,对外提供服务的机器,称作服务器。 服务器指的是网络中能对其他机器提供某些服务的计算机系统,相对普通PC,服务器指的是高性能计算机,稳定性、安全性要求更高 服务器的高性能体现在高速的运转能力,长时间的可靠运行,强大的数据吞吐能力 自建服务器的特点:无尘、无经典、恒 阅读全文
posted @ 2019-01-07 16:09 st--st 阅读(492) 评论(0) 推荐(0)
摘要:设置用户名和邮箱 二、创建版本库 三、基础命令 工作区:红色 暂存区:绿色 当文件被修改后,通过git status查看文件在工作区 四、版本回退 $ git reflog 查看所有的记录 回退到未来版本 五、工作区和暂存区 第一步是用git add把文件添加进去,实际上就是把文件修改添加到暂存区; 阅读全文
posted @ 2019-01-05 17:48 st--st 阅读(1692) 评论(0) 推荐(0)
摘要:Git的安装 安装成功 阅读全文
posted @ 2019-01-05 15:21 st--st 阅读(166) 评论(0) 推荐(0)
摘要:流程: 1.获取前端的文件 2.判断文件是否zip文件 3.解压压缩包并保存 4.遍历解压后的文件夹 5.判断文件是否py文件,将绝对路径添加到列表 6.循环列表,排除注释和空号,统计行数 阅读全文
posted @ 2019-01-03 20:14 st--st 阅读(352) 评论(0) 推荐(0)
摘要:一、介绍 用于生成HTML字段且验证字段的内容输入 二、下载 三、使用 1.定义form类 2.form类定义好字段、字段类型、验证规则 3.实例化form类 4.获取表单数据进行校验 阅读全文
posted @ 2019-01-03 16:40 st--st 阅读(224) 评论(0) 推荐(0)
摘要:一、介绍 基于Python语言,是Python的一个ORM框架,ORM将对象的各个方法翻译成SQL语句,通过DB-API执行。 DB-API : 是Python的数据库接口规范 二、下载 pip install sqlalchemy 三、单表的创建 四、一对多的创建和数据添加 五、多对多关系表的创建 阅读全文
posted @ 2019-01-02 19:09 st--st 阅读(183) 评论(0) 推荐(0)
摘要:一、原理 基于框架的session,但是重新封装了session_interface,修改了open_session()和save_session() 二、下载 pip install flask_session 三、使用 导入:from flask_session import Session 实 阅读全文
posted @ 2019-01-02 17:42 st--st 阅读(154) 评论(0) 推荐(0)