- 博客(104)
- 收藏
- 关注
原创 dict字典在循环过程中添加到列表list出现重复的问题
如上图所示,在最后输出时,发现添加进的字典都变成最后一次的字典。然后在循环里打个点,进行分析第一步:如上图所示,这是刚开始的样子,是正常的,然后我们点击下一步列表l加入了字典a,也是正常的第二步:此时字典a的value为1,并且影响到了l列表里的字典a,所以可以看到,在l列表里,字典已经发生了变化。也就是说,在l列表中的a字典,会实时地受到a字典的变化而发生改变,相...
2019-06-26 22:21:56
1249
原创 scrapy项目改成分布式爬虫scrapy-redis项目
上图是scrapy项目的爬虫文件,下图是scrapy-redis项目的爬虫文件,两者继承的类不一样,而且scrapy-redis项目不需要allowed_domains,另外把在这里我把start_urls替换成了redis数据库里的内容,start_urls改成了redis_key='taoche:start_urls'还有就是,在设置里面配置了一下文件...
2019-06-26 20:10:33
810
原创 多线程爬取豆瓣电影
首先对网页进行分析这个就是我们需要的页面然后看到,这里其实有一个ajax请求,页面上的数据也是从这个请求里生成的。返回的是一个json格式的数据。所以接下来要做的就是先在第一个页面,爬取那些分类的url,然后对比这个ajax请求的url,合成最终的url,最后发起请求,得到数据,最后保存到了mongoDB里,就完成了。代码如下import ...
2019-06-25 22:18:58
1118
原创 爬取CSDN的瀑布流
import requestsimport timefrom lxml import etreeimport pymongoimport reclass CSDN(): def __init__(self): url = 'https://blog.csdn.net/' self.headers = { 'accept...
2019-06-24 19:55:14
565
原创 使用scrapy创建一个爬虫爬取CSDN的瀑布流
1、创建项目scrapy startproject CSDNcd CSDNscrapy genspider csdn www.csdn.net2、分析网页然后首先应该是要对这个页面进行xpath分析,抓取这些元素然后随便点进里面的一个标题,再分析网页,这里点击的标题是python,然后下拉网页,发现它没有分页,获取新数据的方式是下拉页面,也就是瀑布流。然后...
2019-06-22 10:13:07
732
原创 使用scrapy创建一个项目爬取网易云音乐的所有歌手的相关资料
1、创建一个项目scrapy startproject项目名称我的项目叫Neteasy_music,所以命令是scrapy startprojectNeteasy_music2、创建一个爬虫先把目录切换到项目里面cd 项目名称 scrapy genspider 爬虫名字 网站地址我这里取的名字是neteasy_music,爬取的网页是music.163.com/d...
2019-06-20 20:07:12
1442
2
原创 scrapy项目使用中间键模拟浏览器登陆抓取动态HTML
有些网页,使用request返回的数据不完整,这时候需要使用模拟浏览器以腾讯招聘为例,在浏览器里显示但是如果我们抓取返回的数据的话,他返回的就变动了所以我们需要模拟浏览器使用一下1、先创建scrapy项目2、创建爬虫文件,spider_tencent.py,这里是把抓取下来的文件保存为一个html文件3、编写中间键TencentMiddleWares.p...
2019-06-19 16:43:10
1229
原创 scrapy项目的创建并抓取数据保存到mongo数据库
1、创建项目scrapy startproject 项目名称如图所示,我是在d:\code\scrapy目录下创建的shanbei项目这就是创建完成的项目,结构是这样的2、初始化一个爬虫先把目录切换到刚刚创建的项目,然后输入scrapy genspider 爬虫名称 "爬取的网站"可以看到,第一个错误提示我们,爬虫名称不能和项目的名称重复,把名称改了之后,创建成...
2019-06-19 13:51:09
427
1
原创 贪婪匹配和非贪婪匹配
贪婪模式:在整个表达式匹配成功的前提下,尽可能多的匹配 ( * );非贪婪模式:在整个表达式匹配成功的前提下,尽可能少的匹配 ( ? ); ? 重复匹配0次或1次 * 重复匹配0次或更多次 + 重复匹配1次或更多次 默认情况下是贪婪的!content = 'ab...
2019-06-11 20:00:45
202
原创 python中的re模块正则表达式常用的方法
re 模块的一般使用步骤如下:使用compile() 函数将正则表达式的字符串形式编译为一个Pattern对象。通过Pattern对象提供的一系列方法对文本进行匹配查找,获得匹配结果,一个 Match 对象。最后使用Match对象提供的属性和方法获得信息,根据需要进行其他的操作。compile 函数compile 函数用于编译正则表达式,生成一个 Pattern 对象,它的一般使用形式如...
2019-06-11 19:44:12
995
转载 使用正则将request headers、from data等请求头转换成字典
如上图所示,然后复制粘贴到pycharm里,存放到字典里然后使用ctrl+r快捷键打开替换功能,并勾选Regex替换源为:(.*):\s(.*)$替换为:"$1": "$2",然后点击Replace all替换全部:最后再ctrl+alt+L键,整理一下格式就行了...
2019-06-11 14:35:05
3307
原创 使用蓝图组建flask项目
Flask本身是一个轻量级的框架,所以使用很方便,我们要学习的是flask蓝图,组建企业级项目。但是如果需求很小,使用flask开发,完全没有必要遵照蓝图模式,搭建一堆文件。1、配置文件 E:\code\flask\CompanyProject\config.pyimport os# basedir = os.path.dirname(__file__)# print...
2019-04-22 19:34:42
464
原创 flask中的数据库数据同步
一、安装flask-script1、在命令行中启动flask环境(我的是Anaconda中的flaskpath环境)activate flaskpath2、安装flask-scriptpip install flask_script二、使用flask-script1、在初始化的时候导入flask-scriptfrom flask_script import ...
2019-04-22 19:26:41
1721
1
原创 flask中的相关文件的配置
目录一、Flask settings配置1、导入python类型的settings配置文件settings.py文件init文件2、接受其他类型的配置文件3、通常工作当中的flask配置Settings.pyInit.py一、Flask settings配置Flask 是python轻量级的web框架,所以在开发之初给我们提供了最为简单第一个开发的模式,单文...
2019-04-22 19:05:29
487
原创 django分页
目录1、最基本的分页思路2、使用django的分页插件进行分页3、高级分页思路4、基于vue和ajax的分页 每页条数(pageSize) 页码 每页数据 10 1 0-10 10 2 10-20 ...
2019-04-19 21:32:12
686
原创 flask中的form表单实现注册和登录
E:\code\flask\School\School\__init__.py先把配置文件给设置好,在表单提交的过程中,如果要使用post请求的话,也要先在这里配置,这里as CsrfProtece是因为以前的版本中是叫这个名字,但是后来改了实例化app,配置app,实例化dbE:\code\flask\School\School\models.py这里导入的是School下的...
2019-04-19 18:56:36
1910
原创 flask使用sqlalchemy对数据库进行增删改查
目录一、安装flask_sqlalchemy二、配置三、定义数据模型四、对数据库进行操作1、增2、删3、改4、查一、安装flask_sqlalchemy由于flask对sqlalchemy进行了二次封装,所以不能直接使用sqlalchemy,而需要先安装flask_sqlalchemy二、配置导入模块,进行sqlalchemy的配置 ...
2019-04-18 22:20:54
5298
原创 开始flash项目
1、url路由传递参数from flask import Flaskapp = Flask(__name__)@app.route('/say_hi/<name>') #需要在url传参的话用<>括起来def say_hi(name): #然后通过函数设置参数 return 'hi %s' % name #在函数里引用if __...
2019-04-18 20:40:35
489
原创 Flask安装
Flask部署1、创建虚拟环境conda create -n flaskpath python=3.6.22、安装flask首先激活刚刚配置的环境activate flaskpath然后安装flashpip install flask安装成功3、编写hello_world首先要把安装的沙箱里的环境作为解释器from fl...
2019-04-18 11:07:20
2572
原创 mysql主从备份
目录一、准备工作1、关闭Server和Client的防火墙和seLinux2、Ping 测试3、安装Mariadb4、mariadb的生成配置二、Server端操作1、创建数据库2、授权3、刷新授权表4、查看授权的状态5、创建测试表6、导出数据库7、使用scp命令传到71的opt下8、配置文件/etc/my.cnf三、客户端1、创建数...
2019-04-17 21:42:32
470
原创 django在服务器上部署
目录一、安装python1、下载依赖包2、下载python包3、解压python包4、切换到python包路径5、编译安装6、创建软链接二、安装django三、安装uwsgi1、安装uwsgi2、创建软链接3、测试uwsgi和django的契合4、关闭防火墙和selinux5、使用uwsgi的命令启动django6、使用uwsgi脚...
2019-04-17 00:01:16
19192
3
原创 jdango的admin安装富文本ckeditor
1、富文本1、安装模块Pip install django-ckeditor2、安装app配置路由替换之前text字段进行配置收集静态python manage.py collectstatic 将项目当做设定好的app的静态集中起来查看效果改回设置...
2019-04-10 08:40:54
118
原创 django自定义标签
自定义一个返回日期的标签前端界面:urls:views:自定义标签的代码:from django import templateregister = template.Library()import datetimeclass CurrentTimeNode(template.Node): """ template.Node提供了Ht...
2019-04-09 19:35:16
154
原创 django过滤器
1、创建过滤器文件2、导入模块,然后实例化,变量名必须是register3、定义一个自己的过滤器函数这里是返回数据的大写4、注册(1)文件内注册register.filter()如下图红框所示,引号内的big是过滤器的名字,而后面的big则是上面的函数big或者是使用装饰器注册,而且注册的时候不需要调用函数,直接命名(2)在settin...
2019-04-09 19:21:22
629
原创 django中的form表单和form表单类以及表单检测
目录form表单一、get方式1、编写前端页面2、修改视图文件3、修改路由4、修改前端代码5、查看效果二、POST方式1、编写前端代码2、修改视图文件3、查看效果form表单类1、在app当中创建一个forms.py脚本(1)手动定义(2)继承2、修改views文件3、修改urls文件4、编写前端5、查看效果fo...
2019-04-02 21:46:19
1370
原创 Django请求
在视图函数定义的过程当中有一个参数叫做request,这个参数就是用来接收来自于请求的信息,请求的信息包含两部分:HeaderBody请求分为以下几种Get 获取,向服务器请求资源 明文 Get请求以?开始,键=值 以&分割 www.laobian.com?name=lee&age=18 {“name”:”lee”,”age”:”18”} ...
2019-04-02 19:49:07
304
原创 Django项目套用模版并链接数据库
目录一、添加文章二、数据返回前端三、前端(1)制作展示页(2)制作详情页一、添加文章我们进入admin页面,添加给数据库添加文章如果不能进入这个页面,则需要创建一个超级用户在项目目录打开命令提示符,输入python manage.py createsuperuser然后跟着步骤,创建超级用户二、数据返回前端我们在views.py文件...
2019-04-01 21:52:08
806
原创 Django数据库的增删改查
目录一、搭建sqlite数据库1、修改setting设置2、数据库同步3、使用sqlite数据库二、Django 数据库操作(1)增方法一:利用类实例化方法二:调用objects的create方法(2)查(3)删(4)改我们以sqlite3数据库为例一、搭建sqlite数据库1、修改setting设置在django项目下的项目名下的set...
2019-04-01 21:19:09
6978
原创 django套用模版
目录1、创建django项目2、在pycharm当中打开项目3、环境变量的配置4、修改设置,路由和视图文件settings.py文件views.py文件5、修正样式6、套用模版{%block 名字 %}{ % endblock %}{% extends 'base.html' %}{% include 'newslistpic.html' %}...
2019-03-29 17:13:02
6901
4
原创 django数据库模型搭建
目录1、创建app(1)启动虚拟环境(2)切到django项目的目录(3)app的结构2、数据库建模3、settings配置1、安装app2、进行数据库配置3、时区和语言4、媒体配置4、数据库同步1、django校验2、数据库语句生成3、数据库同步5、django admin后台创建admin后台管理系统的超级用户在app当中的a...
2019-03-29 16:21:08
452
原创 django的工作原理和mvc
1、在项目当中创建了views.py,views.py是视图文件,用来具体处理请求视图文件当中的函数接受请求,返回响应内容from django.http import HttpResponsedef hello(request): return HttpResponse("你好,世界")urls是路由文件2、请求传递给服务器,url开始匹配ip和端口之后...
2019-03-28 22:22:02
487
原创 django的模板语言
目录1、变量{{变量}}2、标签{% if %}{% ifequal %}{% for %}{{ forloop }}3、过滤器{{ | }}1、变量{{变量}}1、传入前端的变量最外层一定是一个字典2、具体的变量可以是 字符串、列表、字典等类型3、变量通过.方法可以调用自己的无参数方法、索引4、如果变量是字典也可以通过.键调用值...
2019-03-28 21:31:43
596
原创 django项目的配置
1、创建django项目操作切换到想要创建目录的位置 Shift+鼠标右键 --> 在此处打开命令窗口 执行activate djangopath,激活环境 执行django-admin startproject 项目名字注意:Django-admin是Django的命令,如果在常规的python环境下,执行前需要将python的 scripts目录添加到环境变量里...
2019-03-28 19:44:05
247
原创 django框架安装(anaconda环境)
我们使用沙盒环境,anaconda1、在anaconda中创建Django开发的环境需要的Python的版本为3.6.2在命令行中输入conda create -n DjangoPath python=3.6.22、pip安装django包和依赖包(导出包目录)(1)激活anaconda环境activate DjangoPath我们在沙盒里,如果激活了这个环境的话,...
2019-03-27 23:50:36
2596
1
原创 本地docker提交到docker hub
Docker commit [参数] 容器名 镜像名-a 作者 -c 为创建的镜像假如dockerfile命令 -m 描述 -p 提交时暂停容器1、登录docker hubdocker login --username=docker hub的用户名password:docker hub的密码登录成功的话会显示successed2、docker commit -m "镜像...
2019-03-25 20:34:18
539
原创 linux中的docker使用
目录介绍组成安装2、yum list installed | grep docker3、systemctl start docker4、systemctl status docker基本操作1、查看版本和镜像2、创建镜像检查网络创建容器启动容器退出容器创建的同时启动容器进入容器报错容器的管理介绍Docker 是一个开源的应...
2019-03-25 20:15:18
1392
原创 python paramiko
paramiko是python三方的基于ssh协议的远程登录模块,要使用的话首先我们需要安装最常用的安装方法是在命令行中输入pip install paramiko,如果失败的话可以尝试其它的方法。https://blog.csdn.net/weixin_44251004/article/details/88562257 这篇博客中也有记载其它的方法import paramiko...
2019-03-22 20:12:59
160
原创 linux系统中的ssh服务
目录Ssh服务使用密码登录秘钥登录Scp通话ssh机制进行文件的拷贝sftpXshell1、创建主机2、登录xftpSsh服务Ssh是远程控制加密协议,主要的用途是远程登录服务器进行远程上传和下载文件等操作。本人开了一台虚拟机,ip地址为10.10.65.71。接下我要用这个地址作为环境使用密码登录在另一个linux环境下,输入s...
2019-03-22 19:50:42
207
转载 linux用户和用户组管理
一、Linux系统用户账号的管理1、添加新的用户账号使用useradd命令,其语法如下:useradd 选项 用户名参数说明: 选项: -c comment 指定一段注释性描述。 -d 目录 指定用户主目录,如果此目录不存在,则同时使用-m选项,可以创建主目录。 -g 用户组 指定用户所属的用户组。 -G 用户组,用户组 指定用户所属的附加组。 -s She...
2019-03-21 20:46:05
121
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人