自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

刘宇(LY)个人笔记

认真写的文章没人看,随便写的很简单很基础很无聊的东西阅读量反而很大。心累~~~~~~

  • 博客(91)
  • 收藏
  • 关注

原创 Linux 批量删除 修改日期大于某一天的文件

linux 日志根据时间批量删除

2023-02-13 16:49:12 904

原创 Linux awk+uniq+sort 统计文件中某字符串出现次数并排序

在服务器开发中,我们经常会写入大量的日志文件。有时候我们需要对这些日志文件进行统计。Linux中我们可以利用以下命令简单高效的实现这一功能。需要用到的命令简介cat命令 cat命令主要有三大功能 1.一次显示整个文件 catfilename2.创建一个文件 cat filename 2.创建一个文件 cat > fileName 3.将几个文件合并为一个文件 $ cat f

2017-09-23 12:05:19 8913 2

原创 记一个网站的爬虫,并思考爬虫与反爬虫(golang)

本项目的目的是练习刚刚学到的golang语言语法与特性下面做简要介绍:1.首先打开开始页面.2.抓取下一页的地址,这里用。

2023-07-24 22:24:11 1101 2

原创 linux或MacOs下批量解压zip文件

这个命令是将当前所在目录中所有的.zip文件进行遍历,并执行 unzip 命令。这里我们使用命令行工具,通过一个简单的shell脚本来完成这个工作.怎么批量的解压很多个 zip文件,今天遇到这个需求。通过查询我找到一个办法,这里分享给大家。

2023-03-29 13:49:56 446

原创 Python3 封装 简单的数据库操作类 连贯操作

数据库操作是编程的常用功能我在使用其它语言的框架中,经常用到“连贯操作”.于是基于pymysql这一数据库包,造了一个易用的数据库操作类。

2023-02-22 10:28:13 320

原创 网页中 文件上传 input 标签 type=“file“ 设置 中间按钮 button的样式

html 中 input标签 type=file 文件上传时 ,设置 input标签中的按钮的css 样式

2023-02-16 10:37:57 1339

原创 PHP $_FILES中 error 返回值说明

PHP $_FILES中 error 返回值说明。

2023-02-14 14:06:11 134

原创 自制CSDN博客评论邮件提醒

CSDN 本身是有评论邮件提醒服务的。我知道,但是。。。。。。。。。。。你们自己看吧。。。。干啥啊?邮件轰炸机嘛??拉黑,拉黑 !!!自己搞一个了。上代码:# -*- coding:utf-8 -*-import netimport reimport jsonfrom EmailClass import Email_Ldef run(): try: ...

2018-12-07 16:59:56 1127 2

原创 PHP执行系统命令的4个方法 : system , shell_exec , exec , passthru

通过执行系统命令,我们可以调用系统的一些功能,甚至能与其他语言进行交互。1 system() :system — 执行外部程序(命令行),并且显示输出这个函数会将结果直接进行输出 (注意:是直接输出区别于返回值,因为这个,我一般不用它),命令成功后返回输出的最后一行,失败返回FALSE2 shell_exec():shell_exec — 通过 shell 环境执行命令 ( 这就意味着这...

2018-11-05 16:19:28 9594 1

原创 利用SSH 反向代理 ,实现跨局域网连接家里的linux 主机 (树莓派)

最近我买了一台树莓派主机 ,并且装上了官方系统(Raspbian )。打算用它来跑跑脚本之类的。但是遇到一个问题,我在外的时候,怎么远程连接家里的在局域网中的主机呢? 我已经成功的解决了这个问题,期间也遇到了各种坑,我在这里也会详细的说一下这些坑。如果您还有任何其他问题,可以在下面评论留言给我。软硬件环境: 1.树莓派 3b+ 1个,安装于我租住的房间中。联网经过多层NAT(网络...

2018-08-27 18:47:04 10648 4

原创 字典数组根据某key排序

字典是编程中常用的数据结构,由多个字典组成的数组也比较常见。有时候我们需要将字典组成的数组根据其中一个值进行排序。下面是一个用python写的 利用冒泡排序算法写的方法# -*- coding: utf-8 -*-import sysreload(sys)sys.setdefaultencoding('utf8')# 根据字典中某个key ,对字典的数组进行排序# 正序排序...

2018-06-15 17:26:16 2967

原创 MySql 查询时 为NULL 设置默认值

我们在查询MySql 数据库时,如果使用比较复杂的查询方式,查询结果有时候会为空(NULL)。 大多数时候,我们会希望他有一个默认值。 对于这个默认值,一种办法是查询完成后用编程语言给他赋默认值。 然后Mysql给我们提供了一个更简单的办法 :IFNULL 函数# 示例 SELECT IFNULL(a,0) FROM table WHERE 1;这个sql 语句 为 查询结果a...

2018-06-07 21:48:28 29923 3

原创 MySql 查询同一字段多个结果合并到一行显示 GROUP_CONCAT

先直接给出代码:SELECT GROUP_CONCAT(tag) as tagsFROM table_tag tt WHERE tt.id in ('1','2')我们实现合并一个字段的多个结果用到了mysql 函数 GROUP_CONCAT,现有一个表 table_a 他有一个标签表 table_tag 结构如下:1.表 table_a : a_id:唯一标识……...

2018-03-15 21:32:21 9215 1

原创 Mysql 将一张表的数据插入到另一张表中

直接上代码INSERT INTO table_b (`b_1`,`b_2`,`b_3`) SELECT `a_1`,`a_2`,`a_3` FROM table_a WHERE 1 其中,表 table_a 的 a_1,a_2,a_3 字段分别对应表 table_b 的 b_1 ,b_2,b_3 字段...

2018-03-01 21:26:40 2162 2

原创 根据表中的时间戳字段统计每天数据的数量

我们在存数据的时候,经常会存下数据被写入或更新的时间备用。 今天遇到一个需要统计每天插入了多少数据的需求 实现的SQL 如下:select FROM_UNIXTIME(create_time/1000,'%Y-%m-%d')as date,COUNT(*) FROM table_1 where 1GROUP BY date;create_time/1000 是因为我存的时间戳...

2018-02-27 16:57:45 3442

原创 PHP 获取两个日期之间所有日期

public function getDatesBetweenTwoDays($startDate,$endDate){ $dates = []; if(strtotime($startDate)>strtotime($endDate)){ //如果开始日期大于结束日期,直接return 防止下面的循环出现死循环 re

2018-02-02 12:17:33 2935 2

原创 MySql 查询小数保留两位小数

问题 :有一张表 table_a ,它有字段 c_1,c_2 都是数字类型的,现在想求一行中 c_2 字段占 c_1 字段的百分比,要求小数点后保留两位 SELECT FORMAT((a.c_2/a.c_1)*100,2) FROM table_a a where 1;其中 FORMAT 函数中的2 表示保留小数点后两位

2018-02-01 17:25:17 3181

原创 Linux 统计多个文件中 某字符串出现的行数

cat log_0 log_1 log_2 log_3 log_4 log_5 log_6 log_7 log_8 log_9 | grep "object has no attribute" | wc -l或者 cat log_* | grep "object has no attribute" | wc -l1、先用cat命令读入多个文件 2、用grep 找到需要的行 3、用 w...

2018-01-23 09:57:08 8024

原创 MySql 删除表中重复的数据(但要保留一条)

今天遇到一个问题。相同的数据在同一张表里出现了多次。我的需求是删除多余的数据,但要保留其中一条。 定义 表明 table_a ,判断唯一的两个字段 c_1,c_2,无关字段data 表中原始数据如下 首先我们要查看数据库中那些数据重复了,执行如下SQLSELECT * FROM (SELECT COUNT(*) as num,c_1,c_2 FROM table_a GROUP

2018-01-19 14:18:54 27777 16

原创 SQL 统计表 b 对应表a个数,并赋值给表a的一个字段

最近遇到这么个问题表a : 歌单表 music_list表b : 歌曲详情表 music_detail一个歌单对应多个歌曲详情,但在表的设计时,没有考虑到在 music_list 设置一个字段标记对应的 music_detail数据条数。在数据已经入库了之后,同事修改了功能需求。通过测试发现,如果每次使用的时候才在sql中统计歌单music_list 对应的歌曲详情music_det

2018-01-15 10:27:52 1383

原创 Python 读写当前路径下文件错误 UnboundLocalError: local variable 'file' referenced before assignment

python读取文件是个比较常用的操作,最近我在读取文件的时候却遇到下面这个问题。我的代码是:try: file = open("./logs/test") ...finally: file.close()经测试,当我在脚本所在目录执行时,便不会出现这个错误 于是可以肯定 file = open("./logs/test")这段代码中 “.” 所代表的当前目录,并

2017-12-20 14:55:00 11791 1

原创 python封装一个效率极高的 批量更新、插入合一的工具

我在写爬虫的时候,经常会获取大量的数据。这个时候大量数据的数据库操作如果不做一定的优化的话,将会耗费大量的时间。通过实践我发现,批量的数据操作将会极大的提高数据库操作的效率。同时,很多时候存在数据如果存在做更新操作,如果数据不存在,做插入插入操作的情况。于是我造了一个只需传入一个数组,就会自动更新或插入数据的工具。 实测以下方法操作几十万条数据只需要几秒到十几秒 以下为代码:#说明:#使用时直

2017-10-23 20:19:41 2650

原创 python2 去除 字符串中emoji 符号,去除所有4字节utf8字符

对咱们天朝程序员来说,最常用的编码方式就是UTF-8了。大家在创建数据库的时候,总是条件反射选择UTF-8编码。 最近我遇到一个emoji 符号不能写入数据库得问题。通过查询资料得知,emoji 符号占据4个字符长度,而MySQL的utf-8编码只能写入最多3个字节的字符。想要写入emoji 符号,需要将数据库的编码方式改为 utf8mb4 。 然而,我这张表是一张比较老的表,其中存了很多的数据

2017-10-23 18:09:26 7204

原创 python 获得两个数组(List)交集、并集与差集

1.获取两个数组的交集#交集即是两个数组中都有的元素c = list(set(a).intersection(set(b)))2.获取两个数组的并集#两个数组的并集就是将两个数组合并到一起c = list(set(a).union(set(b)))3.获取两个数组的差集#差集即在数组b中有而在数组b中没有的元素c = list(set(b).difference(set(b)))

2017-10-18 10:31:22 5003 1

原创 python递归报错 RuntimeError: maximum recursion depth exceeded

递归是我们常用的一种编程方法,通俗的说就是样一个方法自己调用自己。 今天写爬虫的时候,使用递归出现如下错误RuntimeError: maximum recursion depth exceeded查询资料,这个问题出现是因为python有递归深度限制。但是这个递归深度的限制是可以手动设置的。解决方法:import syssys.setrecursionlimit(100000)实测可用

2017-10-13 16:30:47 2177

原创 协程的概念及Python中利用第三方库gevent使用协程

提到程序的并发操作,大多数人程序员首先想到的进程或者线程。我们先复习一下进程和线程的概念。   进程: 进程(Process)是计算机中的程序关于某数据集合上的一次运行活动,是系统进行资源分配和调度的基本单位,是操作系统结构的基础。在早期面向进程设计的计算机结构中,进程是程序执行的基本执行实体;在当代面向线程设计的计算机结构中,进程是线程的容器。程序是指令、数据及其组织形式的描述,进程是程序的实

2017-09-26 21:42:51 998

原创 Mysql 查询一天中每半小时记录的数量

SELECT HOUR(e.time)as Hour,FLOOR(MINUTE(e.time)/30) as M, COUNT(*) as Count FROM error_log e WHERE e.date = '2017-09-02' GROUP BY FLOOR(MINUTE(e.time)/30),HOUR(e.time) ORDER BY Hour(e.time);floor函数

2017-09-06 11:50:08 17137 3

原创 Mysql 查询一天中,每个小时数据的数量

SELECT HOUR(e.time) as Hour,count(*) as Count FROM error_log e WHERE e.date = '2017-09-02' GROUP BY HOUR(e.time) ORDER BY Hour(e.time);下面是查询结果截图 在另一篇文章里,我总结了查询每半小时统计一次的方法。Mysql...

2017-09-05 21:28:12 37593 19

原创 Python中MD5加密字符串

import hashlibm = hashlib.md5()m.update(str)md5Str = m.hexdigest()可以将其单独写为一个方法,方便调用import hashlibdef md5(str): m = hashlib.md5() m.update(str) return m.hexdigest()

2017-07-24 11:15:30 474

原创 MySql 中 一次update更新多条数据

我最近遇到一个导入Excel表中数据到数据库的需求,数据量一万多条。需先查询数据库中是否存在要插入的数据,若存在则更新数据,否则插入数据。我首先按照常规思路先查询,然后插入或更新。然而nginx返回 504 time out 错误。显然,数据库操作消耗了太多的时间。经测试,该操作消耗了300多秒时间。显然,数据库需要做一些优化。我首先想到给要查询的字段加索引。经测试加索引后测试,完成一次操作耗...

2017-06-16 14:50:25 24443

原创 Ubuntu 环境中多线程下载工具Axel的安装与使用

今天用Ubuntu系统下载一个文件的时候,对方服务器的速度非常的慢,并且速度会越来越慢。一般下载到10%的时候,速度就会几乎为零。 于是我尝试找找类似迅雷的下载工具软件,发现迅雷并没有提供Linux版本。但是我找到一个多线程下载工具 Axel以下是Axel的安装与使用方法安装:sudo apt-get install axel使用:axel 参数 文件下载地址 可选参数:-n 指定

2017-01-04 13:24:39 10428

原创 JavaScript 特有奇葩问题“字符串类型与数字类型混乱”的分析与解决,与类型转换

字符串类型与数字类型的混乱,应该是JS最著名的奇葩问题了。 恰好最近遇到这个问题,在这里对这个问题的解决方法及产生原因进行总结与分析。Java 语言与 JavaScript 语言是什么关系。这是初学者常常疑惑的问题。通常情况下大家会回答“有个屁的关系”。但Java 与JavaScript真的一点关系都没有吗?答案当然是否定的。这两种语言虽然有着各种各样的不同,但他们的语法却非常的相似,或者说

2016-11-24 11:53:05 660

原创 PHP下载功能的实现和获得当前目录

PHP的下载功能怎么实现,网上教程一堆。以下是我亲测可用的。但有两个需要注意的地方注意 1.windows系统目录结构的斜杠“\”,Linux系统的斜杠为”/”,是相反的。我的代码在windows中写好后,部署到Linux上时,无法执行。最后发现导致问题的原因是这个。(后来经过测试,发现window中正反斜杠都可以)。 2.getcwd();方法。这个方法可以得到当前目录。 // ech

2016-11-22 12:08:38 536

原创 jQuery ajax发送POST、JS url跳转、console用法

总结JS常用方法,以备以后使用$.post("URL1",{userName: userName, password: password }, function(data) { //console用法 console.log("输出日志信息"); //JS 跳转到URL页面 window.location.href = "htt

2016-11-02 14:15:45 5493

原创 Thinkphp 逻辑与,逻辑或的复合查询

查询数据库时,有时会遇到即使用了“逻辑与”也是用了“逻辑或”的查询条件。 他的SQL语句如下:SELECT * FROM Persons WHERE (FirstName='Thomas' OR FirstName='William')AND LastName='Carter'//查询名字为"Thomas"或"William",并且姓氏为"Carter"的人在Thinkphp 中,实现这样的查

2016-10-28 16:51:22 877

原创 Thinkphp 打印最近执行的一条SQL语句

不说废话,直接上代码$userModel = D("user");$user = $userModel->where("id = 33")->find();//就是下面这句了echo $userModel->getlastsql();

2016-10-28 16:30:49 3088

原创 PHP 字符串与数组间的相互转化

PHP中数组与字符串经常有需要转化的时候,在其他语言中可能会非常麻烦。但在php中,已经为我们提供了两个方法来实现这一功能,它们的用法如下:1.字符串转化为数组:explode()方法$label = "张三,李四,王五,赵六";$labelArray = explode(",",$label);// ","为分隔符,$label为要操作的变量上面的$labelArray就是我们需要的数组了2.数

2016-10-12 15:17:46 3470

转载 Linux 下使用openSSL 生成RSA密钥对

1、生成私钥 openssl genrsa -out rsa_private_key.pem 10242、将原始私钥转换为pkcs8格式 openssl pkcs8 -topk8 -inform PEM -in rsa_private_key.pem -outform PEM -nocrypt3、根据私钥生成公钥 openssl rsa -in rsa_private_key.pem -pub

2016-09-28 15:19:33 3441

原创 利用Fiddler模拟POST请求

写后台服务器的时候,常用到模拟请求。一般GET请求可以直接利用浏览器进行模拟。 但post请求则一般不行(FireFox可以) 我们常用的抓包工具Fiddler就可以模拟post请求 操作流程如下: 1.选择Composer选项卡2..非json格式(name1=valule1&name2=value2…),header头里面加:Content-Type: application/x-www

2016-09-07 11:26:57 6473

原创 ThinkPHP“逻辑或”关系的多条件查询

thinkPHP连贯操作时,有时会用到多个条件的查询。thinkPHP默认条件下的多条件查询的逻辑关系是"与"。以下是逻辑"或"的示例代码$where['count1'] = $count1;$where1['count1'] = $count1;$where2['count2'] = $count2;$data = $demoModel->where(array($where1,$whe

2016-09-05 15:33:33 2012

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除