1 2 3 4 1
摘要: 数据分析案例-拉勾网招聘信息 1、导入模块配置中文 import pandas as pd import numpy as np from matplotlib import pyplot as plt # 支持中文 plt.rcParams['font.sans-serif'] = ['SimHe 阅读全文
posted @ 2019-10-05 13:45 初级炼药师 阅读(280) 评论(0) 推荐(0)
摘要: pandas入门之DataFrame 创建DataFrame - DataFrame是一个【表格型】的数据结构。DataFrame由按一定顺序排列的多列数据组成。设计初衷是将Series的使用场景从一维拓展到多维。DataFrame既有行索引,也有列索引。 - 创建DataFrame的方式 - 列表 阅读全文
posted @ 2019-10-05 13:44 初级炼药师 阅读(194) 评论(0) 推荐(0)
摘要: pandas入门之Series 一、创建Series 参数 - Series (Series)是能够保存任何类型的数据(整数,字符串,浮点数,Python对象等)的一维标记数组。轴标签统称为索引。 - data 参数 - index 索引 索引值必须是唯一的和散列的,与数据的长度相同。 默认np.a 阅读全文
posted @ 2019-10-05 13:43 初级炼药师 阅读(320) 评论(0) 推荐(0)
摘要: 数据分析之numpy使用 使用numpy生成数字 生成的类型是ndarray类型 t1 = np.array([1,2,3,4,5]) print(t1,type(t1)) # 类型为ndarray t2 = np.array(range(10)) print(t2) t3 = np.arange( 阅读全文
posted @ 2019-10-05 13:33 初级炼药师 阅读(160) 评论(0) 推荐(0)
摘要: 数据分析之matplotlib使用 绘制折线图 参数详情 from matplotlib import pyplot as plt # 设置图片大小,dpi图片放大缩小时可以让其更清晰 plt.figure(figsize=(20,8),dpi=80) x = range(2,26,2) y = [ 阅读全文
posted @ 2019-10-05 13:33 初级炼药师 阅读(243) 评论(0) 推荐(0)
摘要: Scrapy爬虫的暂停和启动 scrapy的每一个爬虫,暂停时可以记录暂停状态以及爬取了哪些url,重启时可以从暂停状态开始爬取过的URL不在爬取 实现暂停与重启记录状态 方法一: 1、首先cd进入到scrapy项目里(当然你也可以通过编写脚本Python文件直接在pycharm中运行) 2、在sc 阅读全文
posted @ 2019-10-05 13:32 初级炼药师 阅读(420) 评论(0) 推荐(0)
摘要: scrapy框架自定制命令 写好自己的爬虫项目之后,可以自己定制爬虫运行的命令。 一、单爬虫 在项目的根目录下新建一个py文件,如命名为start.py,写入如下代码: from scrapy.cmdline import execute if __name__ == "__main__": exe 阅读全文
posted @ 2019-10-05 13:31 初级炼药师 阅读(166) 评论(0) 推荐(0)
摘要: scrapy框架之log日志 scrapy中的debug信息 在scrapy中设置log 1、在settings中设置log级别,在settings.py中添加一行: Scrapy提供5层logging级别: CRITICAL - 严重错误(critical) ERROR - 一般错误(regula 阅读全文
posted @ 2019-10-05 13:29 初级炼药师 阅读(306) 评论(0) 推荐(0)
摘要: scrapy框架之下载中间件 介绍 中间件是Scrapy里面的一个核心概念。使用中间件可以在爬虫的请求发起之前或者请求返回之后对数据进行定制化修改,从而开发出适应不同情况的爬虫。 “中间件”这个中文名字和前面章节讲到的“中间人”只有一字之差。它们做的事情确实也非常相似。中间件和中间人都能在中途劫持数 阅读全文
posted @ 2019-10-05 13:29 初级炼药师 阅读(233) 评论(0) 推荐(0)
摘要: scrapy框架之Selectors选择器 Selectors(选择器) 当您抓取网页时,您需要执行的最常见任务是从HTML源中提取数据。有几个库可以实现这一点: BeautifulSoup是Python程序员中非常流行的网络抓取库,它基于HTML代码的结构构建一个Python对象,并且处理相当糟糕 阅读全文
posted @ 2019-10-05 13:25 初级炼药师 阅读(205) 评论(0) 推荐(0)
摘要: scrapy框架之items项目 Items 主要目标是从非结构化来源(通常是网页)提取结构化数据。Scrapy爬虫可以将提取的数据作为Python语句返回。虽然方便和熟悉,Python dicts缺乏结构:很容易在字段名称中输入错误或返回不一致的数据,特别是在与许多爬虫的大项目。 要定义公共输出数 阅读全文
posted @ 2019-10-05 13:23 初级炼药师 阅读(159) 评论(0) 推荐(0)
摘要: scrapy框架之spider 爬取流程 Spider类定义如何爬取指定的一个或多个网站,包括是否要跟进网页里的链接和如何提取网页内容中的数据。 爬取的过程是类似以下步骤的循环: 1.通过指定的初始URL初始化Request,并指定回调函数。当Request下载完后,生成Response作为参数传给 阅读全文
posted @ 2019-10-05 13:22 初级炼药师 阅读(293) 评论(0) 推荐(0)
摘要: scrapy框架之shell scrapy shell scrapy shell是一个交互式shell,您可以在其中快速调试 scrape 代码,而不必运行spider。它本来是用来测试数据提取代码的,但实际上您可以使用它来测试任何类型的代码,因为它也是一个常规的Python shell。 shel 阅读全文
posted @ 2019-10-05 12:36 初级炼药师 阅读(394) 评论(0) 推荐(0)
摘要: scrapy框架之进阶 五大核心组件 - 引擎(Scrapy) 用来处理整个系统的数据流处理, 触发事务(框架核心) - 调度器(Scheduler) 用来接受引擎发过来的请求, 压入队列中, 并在引擎再次请求的时候返回. 可以想像成一个URL(抓取网页的网址或者说是链接)的优先队列, 由它来决定下 阅读全文
posted @ 2019-10-05 12:34 初级炼药师 阅读(305) 评论(0) 推荐(0)
摘要: scrapy框架之基础 一、安装scrapy 安装失败看博客>>>scrapy安装失败解决方案 pip install wheel pip install twisted pip install pywin32 pip install scrapy 二、创建爬虫项目 scrapy startproj 阅读全文
posted @ 2019-10-05 12:33 初级炼药师 阅读(249) 评论(0) 推荐(0)
摘要: 爬虫之获取猫眼电影10W评论 第一步 打开一个电影的评论界面: 哪吒之魔童降世:https://maoyan.com/films/1211270 我们发现这里只显示10条评论,而我们需要爬取10w条数据,所以不能从此页面进行抓包,所以放弃!!!! 于是又上网查,终于看到一篇文章说到开发者模式可以直接 阅读全文
posted @ 2019-10-05 12:31 初级炼药师 阅读(712) 评论(0) 推荐(0)
摘要: 动态字体反爬 字体反爬也就是自定义字体反爬,通过调用自定义的字体文件来渲染网页中的文字,而网页中的文字不再是文字,而是相应的字体编码,通过复制或者简单的采集是无法采集到编码后的文字内容的。 现在貌似不少网站都有采用这种反爬机制,我们通过猫眼的实际情况来解释一下。 下图的是猫眼网页上的显示: 检查元素 阅读全文
posted @ 2019-10-05 12:27 初级炼药师 阅读(1040) 评论(0) 推荐(1)
摘要: 破解字体加密 获取用户的url 找到目标用户 查看我们要获取的信息 检查网页源代码 发现该网站的字体是自定义的,我们在爬取时需要获取它的字体文件,根据它的编码格式进行解码; 通过http://fontstore.baidu.com/static/editor/index.html查看下载的字体文件, 阅读全文
posted @ 2019-10-05 12:25 初级炼药师 阅读(337) 评论(0) 推荐(0)
摘要: 分析流程 有道翻译:http://fanyi.youdao.com/ 确定网页加载方式 找到真实的url地址 请求接口和请求参数中携带的sign 寻找sign的加密方式 复制sign全网页搜索这个变量 格式化后的HTML代码 找到sign 分析加密得请求参数是怎么生成得 浏览器版本号 # -*- c 阅读全文
posted @ 2019-10-05 12:24 初级炼药师 阅读(923) 评论(0) 推荐(0)
摘要: 协程 任务对象绑定回调 多任务异步协程 多任务异步爬虫 aiohttp使用 案列 阅读全文
posted @ 2019-10-05 12:23 初级炼药师 阅读(423) 评论(0) 推荐(0)
摘要: from multiprocessing.dummy import Pool #线程池模块 #必须只可以有一个参数 def my_requests(url): return requests.get(url=url,headers=headers).text start = time.time() 阅读全文
posted @ 2019-10-05 12:21 初级炼药师 阅读(186) 评论(0) 推荐(0)
摘要: selenium简介 介绍 Selenium [1] 是一个用于Web应用程序测试的工具。Selenium测试直接运行在浏览器中,就像真正的用户在操作一样。支持的浏览器包括IE(7, 8, 9, 10, 11),Mozilla Firefox,Safari,Google Chrome,Opera等。 阅读全文
posted @ 2019-10-05 12:20 初级炼药师 阅读(577) 评论(0) 推荐(0)
摘要: 喜马拉雅 网页分析 1 2 3 4 5 6 7 8 - 打开我们要爬取的音乐专辑https://www.ximalaya.com/ertong/424529/ - F12打开开发者工具 - 点击XHR 随便点击一首歌曲会看到存储所有歌曲的地址【json格式】 - 正常情况下我们直接用requests 阅读全文
posted @ 2019-10-05 12:19 初级炼药师 阅读(1699) 评论(1) 推荐(0)
摘要: 介绍 Base64是网络上最常见的用于传输8Bit字节码的编码方式之一,Base64就是一种基于64个可打印字符来表示二进制数据的方法。可查看RFC2045~RFC2049,上面有MIME的详细规范。 Base64编码是从二进制到字符的过程,可用于在HTTP环境下传递较长的标识信息。采用Base64 阅读全文
posted @ 2019-10-05 12:17 初级炼药师 阅读(3576) 评论(0) 推荐(1)
摘要: JS运行环境 Node.js 是Javascript语言服务器端运行环境 安装和配置:https://www.runoob.com/nodejs/nodejs-install-setup.html 测试运行 测试运行JavaScript程序 微软windows操作系统:附件-命令提示符 需进入到js 阅读全文
posted @ 2019-10-05 12:16 初级炼药师 阅读(2704) 评论(0) 推荐(0)
摘要: 初始化 字符串的形式初始化 URL初始化 文件初始化 css选择器 查找节点 子节点 获取所有子孙节点 获取所有子节点 通过css选择器选择子节点中的某个节点 父节点 直接父节点 祖先节点 通过css选择器选择父节点中的某个节点 兄弟节点 获取所有兄弟节点 通过css选择器选择兄弟节点中的某个节点 阅读全文
posted @ 2019-10-05 12:15 初级炼药师 阅读(458) 评论(0) 推荐(0)
摘要: 简介 XPath即为XML路径语言(XML Path Language),它是一种用来确定XML文档中某部分位置的语言。 XPath基于XML的树状结构,提供在数据结构树中找寻节点的能力。起初XPath的提出的初衷是将其作为一个通用的、介于XPointer与XSL间的语法模型。但是XPath很快的被 阅读全文
posted @ 2019-10-05 12:13 初级炼药师 阅读(324) 评论(0) 推荐(0)
摘要: 介绍 Beautiful Soup是python的一个库,最主要的功能是从网页抓取数据。官方解释如下: 使用方法 项目演示 select选择器选择a标签中的文本内容和gref属性 效果 阅读全文
posted @ 2019-10-05 12:12 初级炼药师 阅读(208) 评论(0) 推荐(0)
摘要: 几种常用模块的使用方法 注释:Excel 2003 即XLS文件有大小限制即65536行256列,所以不支持大文件,而Excel 2007以上即XLSX文件的限制则为1048576行16384列 下面则为几种模块的使用: 1.xlwt 写入xls文件内容 2.xlrd读取xls文件内容 3.综合使用 阅读全文
posted @ 2019-10-05 12:11 初级炼药师 阅读(1711) 评论(0) 推荐(0)
摘要: get基本请求 响应对象的属性: 1 2 3 4 5 6 7 8 9 10 # 获取响应对象中的内容是str格式 text # 获取响应对象中的内容是二进制格式的 content # 获取响应状态码 status_code # 获取响应头信息 headers # 获取请求的url url 1 2 3 阅读全文
posted @ 2019-10-05 12:09 初级炼药师 阅读(337) 评论(0) 推荐(0)
摘要: 请求头中加引号工具 输出 阅读全文
posted @ 2019-10-05 12:08 初级炼药师 阅读(502) 评论(0) 推荐(0)
摘要: 请求方法request 编码parse中的quote方式 UA伪装 POST请求 Ajax请求 抓取百度翻译结果 阅读全文
posted @ 2019-10-05 12:08 初级炼药师 阅读(124) 评论(0) 推荐(0)
摘要: salt介绍 saltstack是由thomas Hatch于2011年创建的一个开源项目,设计初衷是为了实现一个快速的远程执行系统。 salt强大吗 系统管理员日常会进行大量的重复性操作,例如安装软件,修改配置文件,创建用户,批量执行命令等 等。如果主机数量庞大,单靠人工维护实在让人难以忍受。 早 阅读全文
posted @ 2019-10-05 12:07 初级炼药师 阅读(189) 评论(0) 推荐(0)
摘要: 消息队列 工作流程 队列产品 消息队列的作用 rabbitMQ 你了解的消息队列 消息(Message)是指在应用间传送的数据。消息可以非常简单,比如只包含文本字符串,也可以更复杂,可能包含嵌入对象。 消息队列(Message Queue)是一种应用间的通信方式,消息发送后可以立即返回,由消息系统来 阅读全文
posted @ 2019-10-05 12:06 初级炼药师 阅读(299) 评论(0) 推荐(0)
摘要: docker三大概念 docker镜像 image的分层存储 docker容器(container) docker仓库(repository) docker Registry docker安装 ce 社区版ee 企业版 docker版本 环境准备 安装方式 下载docker镜像文件 管理容器 容器管 阅读全文
posted @ 2019-10-05 12:04 初级炼药师 阅读(178) 评论(0) 推荐(0)
摘要: 一、部署前端代码 部署前端代码,就是一些静态文件,丢给nginx去解析前端node js + vue的部署 + nginx的部署 1、下载vue的代码 2、编译vue的代码 编译vue的代码,生成dist静态文件夹,需要用到node js解释器环境 3、解压缩node的源码包 4、配置环境变量 进入 阅读全文
posted @ 2019-10-05 12:03 初级炼药师 阅读(211) 评论(0) 推荐(0)
摘要: 一、python web 项目部署 python django默认启动python3 manage.py runserver 0.0.0.0:8000这种方式调用wsgiref单机模块,性能较低,生产环境不用 线上使用uwsgi工具(由c语言编写的工具,性能强悍)启动django,使用方式: 在激活 阅读全文
posted @ 2019-10-05 12:02 初级炼药师 阅读(166) 评论(0) 推荐(0)
摘要: MYSQL安装(mariadb) 方法1:yum安装mariadb Red Hat Enterprise Linux/CentOS 7.0 发行版已将默认的数据库从 MySQL 切换到 MariaDB。 第一步:添加 MariaDB yum 仓库 找到yum仓库目录,创建repo文件 第二步:在 C 阅读全文
posted @ 2019-10-05 12:01 初级炼药师 阅读(133) 评论(0) 推荐(0)
摘要: 一、代理 正向代理 正向代理,也就是传说中的代理,他的工作原理就像一个跳板(VPN),简单的说: 我是一个用户,我访问不了某网站,但是我能访问一个代理服务器,这个代理服务器呢,他能访问那个我不能访问的网站,于是我先连上代理服务器,告诉他我需要那个无法访问网站的内容,代理服务器去取回来,然后返回给我。 阅读全文
posted @ 2019-10-05 12:00 初级炼药师 阅读(227) 评论(0) 推荐(0)
摘要: 一、nginx安装 卸载yum安装的ngjnx 1 yum remove nginx -y 1 yum remove nginx -y 1 yum remove nginx -y 1 yum remove nginx -y yum remove nginx -y 编译安装nginx步骤 二、ngin 阅读全文
posted @ 2019-10-05 11:59 初级炼药师 阅读(159) 评论(0) 推荐(0)
摘要: 用户提权命令之-sudo sudo命令用来以其他身份来执行命令,预设的身份为root。在/etc/sudoers中设置了可执行sudo指令的用户。若其未经授权的用户企图使用sudo,则会发出警告的邮件给管理员。用户使用sudo时,必须先输入密码,之后有5分钟的有效期限,超过期限则必须重新输入密码。 阅读全文
posted @ 2019-10-05 11:58 初级炼药师 阅读(345) 评论(0) 推荐(0)
摘要: python安装 django安装 mysql安装 nginx安装 卸载yum安装的ngjnx 1 yum remove nginx -y 1 yum remove nginx -y 1 yum remove nginx -y 1 yum remove nginx -y yum remove ngi 阅读全文
posted @ 2019-10-05 11:56 初级炼药师 阅读(145) 评论(0) 推荐(0)
摘要: CentOS 7默认使用的是firewall作为防火墙,这里改为iptables防火墙。 firewall操作: # service firewalld status; #查看防火墙状态 (disabled 表明 已经禁止开启启动 enable 表示开机自启,inactive 表示防火墙关闭状态 a 阅读全文
posted @ 2019-10-05 11:55 初级炼药师 阅读(117) 评论(0) 推荐(0)
摘要: 常用命令 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 查看ip地址的两种方式 ifconfig ip addr show Linux的两种ip地址: 127.0.0.1 本机回环地址 0.0.0.0 全网地址/绑定所有网卡/所有地址 Linux远程 阅读全文
posted @ 2019-10-05 11:54 初级炼药师 阅读(166) 评论(0) 推荐(0)
摘要: Flask中的CBV模式 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 ''' flask中的CBV模式: (1)导入views模块: from flask import views (2)定义类,继承views.MethodView类: class 类名(views 阅读全文
posted @ 2019-10-05 11:53 初级炼药师 阅读(197) 评论(0) 推荐(0)
摘要: Flask-Session 因为flask自带的session是将session存在cookie中; 所以才有了第三方Flask_session插件,可以将session存储在我们想存储的数据库中(redis等) 将session保存在数据库中 注意redis数据库一定是在内网中的且是一台单独的服务 阅读全文
posted @ 2019-10-05 11:53 初级炼药师 阅读(193) 评论(0) 推荐(0)
摘要: 基于蓝图CBV模式的登录 使用蓝图并用cbv模式完成登录功能 登录成功后跳转到首页 将session保存在liunx上的redis数据库 使用before_request验证是否是登陆用户 蓝图 主程序 登录演示 没有登录时访问home页面会跳转到登录页面,让用户登录; 登录成功后会跳转到home页 阅读全文
posted @ 2019-10-05 11:52 初级炼药师 阅读(175) 评论(0) 推荐(0)
摘要: 视图函数中的装饰器 app.before_request 在请求(request)进入视图函数之前执行,是全局的装饰器,每次请求都会走一遍这个装饰器,这和django的中间件很像 登录验证 request.path 是来读取当前的url地址如果是 /login 就允许直接通过 return None 阅读全文
posted @ 2019-10-05 11:51 初级炼药师 阅读(172) 评论(0) 推荐(0)
摘要: Flask配置 Flask 是一个非常灵活且短小精干的web框架 , 那么灵活性从什么地方体现呢? 有一个神奇的东西叫 Flask配置 , 这个东西怎么用呢? 它能给我们带来怎么样的方便呢? 首先展示一下: 代码只要发生改动,自动重启Flask程序(app.run) 在控制台打印的信息非常全面 以上 阅读全文
posted @ 2019-10-05 11:50 初级炼药师 阅读(290) 评论(0) 推荐(0)
摘要: 蓝图应用 在Flask中的蓝图 blueprint其实本质上就是将应用解耦,不同的应用分别放在不同的文件内 蓝图一 蓝图二 主程序代码 蓝图中的初始化配置 阅读全文
posted @ 2019-10-05 11:50 初级炼药师 阅读(137) 评论(0) 推荐(0)