- 浏览: 212488 次
- 性别:
- 来自: 北京
最新评论
-
岛田无涯:
写的很详细 感谢
Mybatis-Plus——为Mybatis镀一层金 -
Du_wood:
somefuture 写道早前面的表格里最后一项,\s是空白字 ...
一篇文章入门正则表达式 -
somefuture:
早前面的表格里最后一项,\s是空白字符,\b才是边界
一篇文章入门正则表达式
文章列表
上篇内容:http://dushen.iteye.com/blog/2415336
项目地址:https://gitee.com/dushen666/spider.git
继续上一篇的内容,在上一篇的时候,我们已经可以将数据爬取下来了,并保存为了json文件的形式。本篇我要将数据插入关系型数据库,并实现去重。
此处以MySQL数据库为例:
我们依照上一篇的items创建表结构:
/*
SQLyog Ultimate v10.42
MySQL - 5.7.20-0ubuntu0.16.04.1 : Database - movie-website1
********** ...
目的:爬取某视频网站的所有视频;
工具:scrapy、MySQL、python 2.7;
项目地址:https://gitee.com/dushen666/spider.git;
scrapy是一个python的爬虫框架,有兴趣的同学可以了解一下,本篇我将介绍如何用scrapy从零开始编写一个爬虫;
步骤↓
安装python 2.7,并配置好环境变量 ,此处不多说。
安装scrapy:
pip install Scrapy
若没有pip请自行安装
构建一个scrapy项目:进入想要保存项目的路径,执行以下代码:
scrapy startproject spider
...
本章将介绍Django的admin工具:
通常一个网站或应用都会有一个给用户使用交互界面和一个给维护人员使用的管理端,管理端最基本的功能就是进行内容管理。Django admin工具提供了常用的对模型的CURD操作,可以实现三分钟搭一个管理端。
步骤↓
当我们使用django-admin startproject xxx 构建好一个Django项目时,我们会发现在settings.py中存在以下代码:
INSTALLED_APPS = [
'django.contrib.admin',
'django.contrib.auth',
'django.cont ...
Django支持多种数据库,如PostgreSQL、MySQL、SQLite、Oracle。Django模型提供了统一的接口实现数据的CURD操作,所以可以很方便地切换数据库。
下面将介绍Django model的使用,笔者以MySQL数据库为例:
步骤↓
安装mysqlclient,用于Django ...
Django模板↓
在上一篇建立的项目下的templates目录下新建模板文件hello.html,目录结构如下:
HelloWorld/
|-- HelloWorld
|-- manage.py
`-- templates
`-- hello.html
hello.html代码如下:
{{hello}}
修改HelloWorld/settings.py,修改 TEMPLATES 中的 DIRS :
TEMPLATES = [
{
'BACKEND': 'django.template.backends.django.Dj ...
Django是python下一个开源的、mvc模式的web应用框架,我们都知道,python版本不向下兼容,下表为Django版本与python版本的对应关系:
Django version
Python versions
1.8
2.7, 3.2 (until the end of 2016), 3.3, 3.4, 3.5
1.9, 1.10
2.7, 3.4, 3.5
1.11
笔者在写这篇文章的时候,个人的服务器正在遭受攻击,为了避免更多的人被坑,笔者淡定地边处理边写下这篇博客,希望可以帮助到大家!
环境:
ubuntu16.04.1 云服务器
redis
部署于tomcat上的个人应用
背景:
查看服务器状态时,发现redis用户的cpu使用率过高,打开redis日志,发现大量如下信息:
[10167] 04 Feb 19:05:20.065 * 1 changes in 900 seconds. Saving...
[10167] 04 Feb 19:05:20.066 * Background saving started by pid 21837
[ ...
一、简介:
ansible是新出现的自动化运维工具,基于Python开发,集合了众多运维工具(puppet、cfengine、chef、func、fabric)的优点,实现了批量系统配置、批量程序部署、批量运行命令等功能。
ansible是基于模块工作的,本身 ...
在上一篇博客中,笔者简单介绍了从零开始,在java中使用七牛云实现文件的上传和下载。本章,笔者将介绍qiniu SDK的其他功能。
上篇文章的链接:从零开始,在java中使用七牛云实现文件云存储(一)
好了,直接进入正 ...
Mybatis-Plus是一个Mybatis的增强工具,它在Mybatis的基础上做了增强,却不做改变。我们在使用Mybatis-Plus之后既可以使用Mybatis-Plus的特有功能,又能够正常使用Mybatis的原生功能。Mybatis-Plus(以下简称MP)是为简化开发、提高开发效 ...
开篇总是要写一些概括性的东西!
Swagger 是一个RESTful接口的文档的实时生成与测试工具。没接触过类似工具的你可能对这句话没什么概念,不要急,我来慢慢解释。
使用REST的原因之一就是方便前后端分离开发,后端开发者写后端的逻辑,前端开发者写前端的逻辑,然后大家约定好一个API的风格,使用HTTP的get、post、put、delete来对应资源的CURD。避免了这种情况的发生:前端开发者拿着后端提供的厚厚的API文档边查阅边愤愤地开发,每个业务逻辑对应一个接口规范,混乱不堪。然后某一天后端改了逻辑,删掉了几个接口又增加了几个接口,前端又要大范围地改代码,然 ...
在上一篇博客中,笔者简单介绍了qiniu SDK的资源管理以及各种上传凭证的生成,本章笔者将介绍qiniu SDK的资源批量管理功能。
上篇文章的链接:从零开始,在java中使用七牛云实现文件云存储(二)
进入正题!
批量获取文件状态:
/**
* 批量获取文件状态
* @param zone
* @param auth
* @param keyList 文件名列表, 单次批量请求的文件数量不得超过1000
* @param bucket
* @return
*/
public static BatchStatus[] get ...
适合阅读本编博客的读者:正则表达式的初学者、想要入门正则表达式的程序员们
正则表达式描述了一种字符串匹配的模式,可以用来检测字符串是否匹配某种规则。大多数编程语言都集成了正则表达式,虽然流派的不同使得在各个语言中正则表达式的语法略有差异,但使用正则表达式的基本思路、以及正则表达式的常用语法是互通的。
在日常编程以及维护中,正则表达式的使用还是很广泛的,例如在JavaScript中我们对表单内容做校验、使用Nginx做反向代理时对url做匹配亦或是在Linux系统使用grep命令查找文本内容以及文本替换等,例子太多了。
初次接触正则表达式时,其实一开始我是拒 ...
在日常开发中,我们常常会把一些敏感信息写进*.properties配置文件中,比如数据库密码、redis密码、admin用户的密码甚至系统用户的密码等。
我在某银行做运维时,经常会遇到这样的情况:
银行的系统都是通过堡垒机管理的,应用管理人员理论上不应该知道任何系统用户的密码,只需通过堡垒机,使用只读key或可写key即可登录相应的用户。但在一次偶尔查看应用的配置文件时,我发现应用在调用CD时需要登录系统用户,而用户名和密码均使用明文写在了配置文件中。知道了用户名密码,就可以使用su命令随意切换用户了。诸如此类的还有数据库密码等,均可在配置文件中找到,这在信息安全和权限控制等方面有很大的 ...
主机:腾讯云服务器(ubuntu 16.04.1)系统
工具:xshell
步骤↓:
下载所需版本的Tomcat,Tomcat官网:http://tomcat.apache.org/,本文以Tomcat8为例: 下载所选版本Tomcat中,core中的tar.gz包。
使用FTP工具上传tar.gz包到主机,本文使用xshell配套的xftp:
使用xshell登录主机,切换至Redis的管理用户,笔者使用的root用户:
Shell代码
ubuntu@VM-202-164-ubuntu:~$ su
Password: