- 博客(40)
- 收藏
- 关注
原创 centos上安装anaconda
1.从官网上下载.sh文件2.改变文件权限并安装chmod +x xxx.sh./xxx.sh3.添加环境变量进入到:vim /root/.bashrc然后添加:export PATH="/root/anaconda3/bin:$PATH"保存后:source /root/.bashrc4.验证conda list
2020-12-02 20:09:43 208
原创 八.Django中的ORM
Django鼓励开发人员进行相对独立的模块开发,这种开发模式在工作中被称为:解耦合,就是指在开发中将项目看成几个独立的模块进行开发,降低模块之间的耦合性。在这种思路下,django数据开发采用了mvc和mvt设计模式,和ORM机制作用:将数据库中的表名映射为类名,将字段映射为属性,可以操作类方法,类属性快速操作数据库可以使用我们创建好的模型,帮我们创建表无需关心具体使用的是那种数据库...
2019-11-14 21:46:14 177
原创 七.子应用的创建、配置及使用
djangp给我们提供了子应用,将独立的功能进行独立管理,将独立的模块放在同一个app当中,包括该模块的路由,视图,html,静态资源。1. 创建app子应用首先确保在虚拟环境下,在manage.py的同级目录下python manage.py startapp appname#appname是子应用的名字子应用的目录说明migrations 数据迁移文件,数据库表结构的同步的...
2019-11-14 21:19:02 447
原创 TemplateDoesNotExist的排错
解决思路:检查templates目录的位置检查配置文件中templates是否正确检查视图调用模板文件是否正确
2019-11-14 20:51:45 252
原创 六.模板继承
在实际开发当中,使用前端开发好的静态页面,页面当中有很多重复的东西,为了能够简单操作,复用代码,可以使用模板继承解决1.创建一个base.htmlbase.html作为父类模板调用base页面提供公共的部分,将公共的部分用{% block 名称%}{% endblock %}来替换通常都有title、js、content等方法:浏览器 检查 寻找公共的部分2.修改子...
2019-11-14 20:49:28 182
原创 五.静态文件的配置及使用
前端三大部分 结构 样式 行为在web开发过程当中,有一类型的文件叫做:静态文件,指:css,js,image.这些文件通常不被直接访问,往往是在加载页面的时候被加载,这些内容是固定的。静态文件的配置1.创建目录2.配置# 静态文件的配置STATIC_URL = '/static/'STATICFILES_DIRS = ( os.path.join(BASE_DI...
2019-11-14 20:37:21 433
原创 四.模板的调用及模板语法
一.模板调用1.第一种2.第二种3.第三种二.模板语法1.变量的使用在模板中,如果想要使用后端传入的数据,就要用到模板语法去实现。django提供的模板语法:变量的使用,控制语句,循环django模板html文件中使用变量 语法: {{ }}使用locals()方法,作用是将当前视图函数的所有局部变量返回2.控制语句if else elif模板中使用控制语句,...
2019-11-14 20:20:36 706
原创 反反爬
1.反爬措施以及应对措施(1)通过user-agent客户端标识来判断是否是爬虫解决:封装user-agent请求头(2)通过访问的频率来判断解决:设置爬取的间隔(3)封ip解决:设置代理(4)页面无法直接获取数据,显示的是js代码解决:selenium+phantomjs可以获取页面数据2.动态html页面的处理方法(1)jshtml是页面的骨架,css是装饰器,js是页面...
2019-11-13 22:27:13 159
原创 scrapy分布式
(1)什么是分布式?将一个任务分割成多份,每一份由一个计算机完成,最后所有的计算机能够成为一个整体,得到这个任务的结果。分布式数据库:产生的原因:原来一个数据库都是放在一台电脑上的,但是由于用户量的增多,造成数据库压力很大,所以产生一个思想,就是用多台电脑可以提供同样的数据库服务。(2)scrapy分布式:原来的项目是部署在一台电脑上的,这样爬取速度虽然很快,但是我们还能提升,联想到分...
2019-11-12 19:36:39 941
原创 增量爬虫
增量爬虫就是:增量就是使爬虫获取到的数据以增量的形式稳定增长。增量爬虫的方案:1.爬虫开始在爬取数据前,查看这个url是否被爬取过。–查看url是否重复。2.爬虫中间有时候在爬取一些网站的时候,可能得到一些数据,但是这个网页的更新速度可能会比较快,这时候我们可以查看这个网页是否有更新,如果更新了,相应的这个网站的数据也应该在数据库更新。这种实现的步骤:将页面的response.te...
2019-11-12 19:03:53 1276
原创 Redis基础知识
redis的客户端和服务端命令:redis-server :服务器命令 启动一个redis的命令是:redis-server redis.windows.confredis-cli:客户端命令启动一个客户端的redis命令:redis-cli 一个redis.windows.conf配置就是一个redis服务器。需要启动多个服务器时,只需要修改一下这个配置文件redis.w...
2019-11-08 20:38:42 132
原创 redis配置文件详解
1、基本配置daemonize no 是否以后台进程(守护进程)启动databases 16 创建database的数量(默认选中的是database 0)port 6379 设置redis的端口号save 900 1 #刷新快照到硬盘中,必须满足两者要求才会触发, 即900秒之后至少1个关键字发生变化。save 300 10 #必须是300秒之...
2019-11-08 20:22:46 126
原创 redis的持久化配置
持久化:将内存中的数据保存在硬盘上序列化:将对象保存在硬盘上redis的持久是通过两种方式完成的:RDB快照aof日志一.RDB快照Rdb快照的配置选项:save 900 1 // 900内,有1条写入,则产生快照save 300 1000 // 如果300秒内有1000次写入,则产生快照save 60 10000 // 如果60秒内有10000次写入,则产生快照 (这3...
2019-11-08 20:05:56 185
原创 mongodb集群
replaction复制集一般情况下,我们通常在机器上安装了一个数据库,这是我们的数据都是存在这个数据库中的,如果有一天,因为一些不可控因素导致数据库宕机或者数据库的文件丢失,此时损失就很大了。针对于这种问题,我们希望有一个数据库集,在我们其中一个数据库进行插入的时候,其他数据库也能插入数据,这样其中一台服务器宕机了,也能够使我们的数据正常存取。在MongoDB中,是通过replaction复...
2019-11-07 22:51:49 142
原创 redis的配置
配置成服务1.将下载的安装包解压2.配置环境变量(为解压的文件夹的路径)3.用管理员的身份打开cmd,进入到解压的文件夹下,输入redis-server --service-install redis.windows.conf --loglevel verbose --maxheap 200m若关于maxheap的错误,将后面的–maxheap 200m去掉就可以了redis配置服务...
2019-11-07 22:37:36 155
原创 redis的数据类型
一.字符串setgetmsetmgetsetnxmsetnxincrdecrincrbydecrbysetrangegetrangeset方法:设置key对应的值为string类型的value,如果该key已经存在,则覆盖key对应的value值。所以在redis中key只能有一个。127.0.0.1:6379> set nam...
2019-11-07 21:46:59 134
原创 MongoDB的导入、导出
1.通用选项-h host 主机--port port 端口--u username 用户名-p password 密码所有的导入、导出都要在mongo之外进行json格式的导入、导出导出:mongoexport -d 数据库 -c 集合 -o 文件名eg:mongoexport -d tset -c news -o test.json...
2019-11-07 16:38:22 177
原创 MongoDB的命令
一.MongoDB的简介MongoDB概念说明database数据库collection集合document文档(每一行)field域index索引primary keyMongoDB自动将_id字段设置成主键1.存储mongodb文档存储数据库,存储的文档Bson(json的二进制)特点:内部引擎为JS解释器,把文档存储成...
2019-11-06 21:30:42 128
原创 MongoDB的安装及配置服务
MongoDB的安装1.路径(选择安装的时候选择custom,自己配置路径)这里是:C:\MongoDB\Server\3.42.环境变量:将下面的路径配置到path中C:\MongoDB\Server\3.4\bin3.验证打开cmd,输出mongod没有报错就成功安装(4)新建一个存放数据库的文件夹C:\MongoDB\Server\3.4\data\db(5...
2019-11-05 19:15:40 136
原创 程序、进程、线程
1.什么是程序、进程和线程程序:一个应用可以当做一个程序,比如qq软件进程:程序运行最小的资源分配单位。一个程序可以有多个进程。线程:cpu的最小调度单位,必须依赖进程而存在。线程没有独立的资源,所有线程共享所在进程的资源。关系:一个程序至少有一个进程,一个进程至少有一个线程。2.多线程:概念:多线程是指一个程序包含多个并行的线程来完成不同的任务。优点:可以提高cpu的利用...
2019-11-04 19:36:40 269
原创 selenium+phantomjs的使用
使用selenium+phantomjs来请求页面from selenium import webdriver#1.创建driver对象
2019-11-02 10:19:05 448
原创 安装anaconda中遇到的问题
1.如何配置环境变量?环境变量的意义:让环境变量找到一些exe文件(1)配置一下路径:C:\Anaconda3------放python.exeC:\Anaconda3\Scripts-----放pip.exe(2)把这两个目录放在path最前面。这样系统在找Python和pip的时候会先找到anaconda下面的内容。2.Python2和Python3如何兼容?在我们在cmd输入P...
2019-11-01 21:51:01 604
原创 爬虫之xpath
1.什么是xml(1)定义:xml称为可扩展标记性语言。(2)特点:xml具有自描述特性。是一种半结构化数据。(3)作用:xml的设计宗旨是用来传输数据。2.xml和html的区别1)语法要求不同:xml的语法要求更严格。1、在html中不区分大小写,在xml中严格区分2、在html中,有时不严格,如果上下文清楚地显示出段落或者列表键在何处结尾,那么你可以省略</p>或...
2019-10-30 20:36:37 210
原创 正则表达式
一.数据的分类1.结构化数据:数据以行为单位,一行数据表示一个实体的信息,每一行的数据的属性是相同的。常见关系型数据库中以表存储的数据就是结构化数据。2.半结构化数据:结构化数据的一种形式,并不符合关系型数据库或其他数据表的形式关联起来的数据模型结构,但包含相关标记,用来分隔语义元素以及对记录和字段进行分层。因此他也被成为自描述的结构。常见的半结构化数据有:xml,html,json3...
2019-10-29 20:21:54 131
原创 爬虫的会话机制及代理
cookie和session1.产生的原因:因为http是一个无状态的协议,每次请求如果需要之前的请求信息,此时必须发送之前的请求。为了解决这个问题,产生了记录状态技术-----cookie、session2.cookie与session的关系当客户端发送一个cookie,服务器会从这个cookie中找到sessionId,再查找出相应的session信息之后返回给客户端,来进行用户页面的...
2019-10-29 19:39:15 157
原创 将本地的项目上传到github上
1.建立本地的仓库在项目目录下,打开git bushgit init2.将文件上传到暂存区中先查看项目:git status上传到暂存区:git add 项目名3.将文件从暂存区上传到仓库中git commit -m "描述信息" 项目名4.将文件从本地仓库上传到远程仓库中git push origin master...
2019-10-28 21:41:53 83
原创 requests模块中的get请求与post请求
get请求步骤1.导包import requests2.确定urlurl=’’3.发送请求,获取响应response=request.get(url=url, #请求的urlheaders=headers, #请求头params={} #请求的参数列表)4.对于response的分析(1)状态行中的状态码response.status_code(2)响应头r...
2019-10-28 20:26:32 939
原创 爬虫的基础知识
爬虫1.网络爬虫的定义:一个已经写好的脚本,用来自动的抓取互联网信息的脚本。2.爬虫可以解决的问题:(1)解决冷启动问题(2)搜索引擎就是基于爬虫的(3)建立知识图谱,帮助建立机器学习知识图谱(4)可以制作各种商品的比价软件,趋势分析初级爬虫工程师1.web 前端的知识: HTML、CSS、JavaSc1ipt、 DOM、 DHTML 、Ajax、jQuery、json...
2019-10-27 20:11:54 268
原创 docker的基本操作
docker的基本操作1.docker的安装yum install docker -r2.查看docker的版本docker --version3.docker的状态、启动、关闭systemctl status dockersystemctl start dockersystemctl stop dockerdocker的组成一.镜像查看本地的镜像docker ...
2019-10-25 20:50:16 147
原创 Git的基本操作
1.创建初始化仓库在创建的目录下,打开git:git init执行结束之后,会多一个git的隐藏文件2.配置个人信息配置局部身份git config user.name '起一个用户名'git config user.email '设置用户的邮箱'配置全局身份git config --global user.name '起一个用户名'git config --global...
2019-10-25 16:59:37 121
原创 三.Django创建模板
创建模板在做web开发,要给用户提供一个页面,页面包括静态页面+数据,两者结合起来就是完整的可视化的页面,django的模板系统支持这种功能,首先需要写一个静态页面(结构html,样式css,行为js)然后通过python的模板语法将数据渲染上去。1.创建一个templates目录注意:与主目录同级2.配置模板在settings.py中:配置该条信息...
2019-09-15 17:24:30 142
原创 二.Django编写一个简单页面
Django编写一个hello world页面1.在主目录创建一个views.py文件2.在urls.py编写路由首先导入views.py中的函数from . import views编写路由:path('路由名/',views.函数名)3.在views.py中写函数def 函数名(request): return HttpResponse('Hello World')...
2019-09-15 17:13:25 223
原创 一.Django配置虚拟环境、创建项目
1.创建虚拟环境conda create -n 虚拟环境名 python=版本2.激活虚拟环境activate 环境名3.安装Djangopip install django==版本查看是否安装成功,进入Python交互环境:import djangodjango.VERSION如果没有报错,就说明安装成功4.创建工程选择一个文件夹,shift+鼠标右键进入终端(在...
2019-09-15 17:00:34 145
原创 魔方方法与类的方法
魔方方法delcallreprneweqhash类的方法issubclassisinstancehasattr、getattr、delattr
2019-07-30 21:42:36 114
原创 面向对象编程
面向对象变成有三大特性:封装、继承、多态。封装让类中的某些部分(某些属性或者方法)隐藏起来类中的变量可以在外部改变,所以有了封装!私有方法继承减少的代码的重复率Cat和Dog类可以不用单独的初始化,可以调用父类中。重写钻石继承d=D()执行结果为:print(D.mro())根据类的mro表进行继承的多态...
2019-07-29 20:59:46 85
原创 推导式及time模块
推导式列表推导式最基本的:使用函数的:加入if语句的:双层列表:双层列表的形成字典推导式集合推导式random库random.random()0-1随机小数random.uniform(a,b)a-b随机小数random.randint(a,b)a-b整数random.randrange(a,b,step)a-b,步长为step的随机整数...
2019-07-25 21:44:52 97
原创 python的数据类型
不可更改类型(元组,字符串,数字)可更改数据类型(列表、字典)列表字典注:参数最好不要是可变类型,会出现逻辑错误!! 运行结果为:[10]、[10,10]...
2019-07-23 21:35:59 90
原创 Python中的函数
python基本语法之三函数定义函数函数可重复利用的,组织好的,用来实现独自功能的代码块。函数可以提高程序代码的重用率。def prt():#定义函数print(“1楼,鞋类商品”)print(“2楼,女性服饰”)print(“3楼,男装”)print(“4楼,运动装”)floor=int(input(“请输入楼层:”))if floor1:print(“西单大悦城1层欢...
2019-07-22 20:50:10 209
原创 python的基本语法(二)
python基本语法之二for循环range–前闭后开for i in range(5):#start默认从0开始,结束为4,左闭右开print(i)for i in range(3,9):#start=3,end=8print(i)for i in range(10,20,2):#start=10,end=19,step=2print(i)for i in range(18,8...
2019-07-18 21:04:45 243
原创 python的基本语法
python基本语法之一一.注释1.单行注释以#开头,#右边的所有东西当做说明,而不是真正要执行的程序,起辅助说明作用eg: a = 3 #将3的值赋值给a2.多行注释多行注释是用三引号(单引号或双引号)包含的字符串eg:注:并不算真正的注释-- coding:utf-8 --二.变量以及类型变量来源于数学,是计算机语言中能储存计算结果或能表示值抽象概念。变量可以通过变量...
2019-07-15 20:32:15 110
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人