- 博客(35)
- 问答 (1)
- 收藏
- 关注
原创 MYSQL:ONLY_FULL_GROUP_BY
5.7.*版本以下默认关闭该选项,支持select后的查询字段可以不出现在Group by中。高版本默认开始该选项,要求select、having以及order by后的字段必须在Group by中出现。
2021-07-10 08:40:56
138
原创 SQL执行顺序
From -> Join -> On -> Where -> Group by -> Having -> Select -> Union -> Order by -> Limit
2021-07-10 08:31:04
113
原创 Python爬虫在一个循环体访问页面、处理数据并构造数据列表时造成的内存不断增加而Killed, 如何释放?
recordLogger.info("> Collecting Android ranking query_date:{}".format(today)) app_list = [] format_data = [] for country in country_list: app_list += RankingDataHandler.for...
2019-07-24 18:20:37
885
原创 laravel 查询数据库时为字段指定别名
Game::select('id', 'name as text')->get();此时查询结果name字段会以text重命名
2019-04-24 11:02:20
8058
原创 laravel 定义model用uuid作为主键时需要关闭id自增
laravel model用uuid作为主键时需要关闭id自增, 否则获取的id值总有问题 public $incrementing = false;
2019-04-14 15:47:19
1389
原创 linux终端字符串转字符画
概述:将字符串(非图像)转换成字符画,效果如图: __ __ ___ ______________ _____ _____/ /_ ___ _____/ /__ / _ \/ ___/ ___/ __ \/ ___/ / ___/ __ \/ _ \/ ___/ //_// ...
2019-03-28 10:49:22
2581
翻译 解决laravel-admin表单在hasMany中调用embeds方法时字段被忽略的问题
地址: https://github.com/z-song/laravel-admin/issues/899地址: https://github.com/z-song/laravel-admin/issues/2889首先该问题出现的原因是因为原框架不支持在hasMany中使用内嵌方法embeds,至于为什么没有加入到新版本中,原因也不知道了,这里提供仅仅提供解决方法(原答案参照第一条链接中的...
2019-03-22 09:47:59
3149
原创 sqlalchemy搭配mysqlconnector和pymysql时遇到的问题记录
使用sqlachemy + mysqlconnector:Traceback (most recent call last): File "D:\ProgramData\Anaconda3\lib\site-packages\mysql\connector\conversion.py", line 179, in to_mysql return getattr(self, "_{0}...
2019-03-11 12:24:16
3023
3
原创 Syntax error or access violation: 1071 Specified key was too long; max key length is 1000 bytes
问题:PDOException::("SQLSTATE[42000]: Syntax error or access violation: 1071 Specified key was too long; max key length is 1000 bytes")解决方法:在AppServiceProvider中做如下修改use Illuminate\Support\Facades\S...
2019-02-14 13:35:24
420
原创 Laravel API相关
路由模型绑定普通方法:Route::get('/article/{id}', function($id){ $article = \App\User::find($id);}修改服务提供者实现绑定:修改RouteServiceProvider中的boot方法,此时每一个参数的id值都会被对应为一个Article实例。public function boot(Router $...
2019-02-12 09:08:51
443
原创 Python 装饰器为什么要双层嵌套
参考链接:python装饰器为什么要双层嵌套函数python装饰器为什么要双层嵌套从上述回答中的几个有助于装饰器理解的 关键点:装饰器发生在 定义 阶段而不是 执行 阶段。装饰器返回的是一个被装饰过的 函数定义。结合第二点理解now = foo(now)。原因:如果没有嵌套,实际上装饰器返回的要么是原函数的定义,要么根本不是函数,也就是说函数根本没有被装饰。即使碰巧得到了...
2019-01-31 15:25:45
1486
原创 Python 绝对路径获取
获取当前执行文件和执行文件夹的绝对路径:from os.path import dirname, abspathprint(abspath(__file__)) # 获取当前执行文件的绝对路径print(dirname(abspath(__file__))) # 获取当前执行文件夹的绝对路径...
2019-01-31 11:14:45
1430
原创 Python 日期加减
利用Python获取某个日期(形如xxxx-xx-xx)之前或之后多少天的日期:import datetimedef get_day(date, step=0): """获取指定日期date(形如"xxxx-xx-xx")之前或之后的多少天的日期, 返回值为字符串格式的日期""" l = date.split("-") y = int(l[0]) m = in...
2019-01-31 10:13:58
2183
原创 Python 爬虫乱码解决思路
这里从网页的压缩方式提供两种解决方法。方法1:# 查看`headers`中是否设置:'accept-encoding': 'gzip, deflate, br',# 如果有,修改为:'accept-encoding': 'gzip',方法2:安装brotlipy,依照文档使用。原因:原因为你同意了该种压缩方式后,有的服务器便采用了br这种压缩方法,该种压缩的解压方式目前还不是R...
2019-01-30 17:07:26
397
原创 记几个常用的Screen命令
系统环境下的命令: screen -ls # 列出当前创建的窗口 screen # 创建一个窗口,没有名字,只有id screen -S xxx # 创建名为xxx的窗口 screen -r xxx # 恢复名为xxx的窗口,-r后面也可以接<session id> screen -D -r xxx # 当窗口状态为Attached而无法恢复时,用此命令先踢掉前...
2019-01-29 13:31:07
342
原创 Python Requests爬虫库的基本用法
简单介绍requests目前是Python中很受欢迎的一个库。目前很多的教程中都会有讲到requests,但它们通常从整个爬虫的原理讲起,讲到这部分知识时更多的注重于呈现运行结果,而忽略使用本身应该注意的一些点,这里我将结合自身的使用做一个简单总结,对需要特别注意的点进行标注,代码很少,但其模式已经足够适用于大多数目标。使用方法基本用法(GET)GET请求方式是最常用的方式:impor...
2019-01-28 14:20:42
410
原创 Git && Github的基本使用教程
Git几乎是我们在学习期间都会用到的一个分布式版本控制软件,这给我们提供了极大的便利,也十分符合现在的开源精神,所以,作为一个计算机的学习者,掌握Git的基本用法几乎时百利而无一害。而这篇文章则主要记录一些基本操作,但是这些基本操作在日常使用中几乎时完全足够了。基于本地的Git管理创建本地的版本库 $ mkdir testGit # 创建工作文件夹 $ cd testGit...
2019-01-25 10:44:21
324
原创 使用Python发送邮件
背景“懒”是程序猿的第一生产力,从最开始依次进入各个运行程序查看日志,发展到用脚本一次性搜集异常日志,每天只需要登陆服务器敲一个运行命令都觉得太麻烦了。于是就想到定时检测,当有异常的时候再通知我上线查看。当时查看了两种方法,一种是借助微信,一种则是邮件,两者都有现成的库,简单调用即可。这里选择了邮件,相比微信发送感觉更简单可靠一点,适合长时间挂机。网上有很多教程,但很多过期失效的,以下代码自...
2019-01-25 10:07:41
1534
原创 组件
Composer安装及配置检测系统是否安装php:php -v下载安装文件:php -r "copy('https://install.phpcomposer.com/installer', 'composer-setup.php');"执行安装:php composer-setup.php删除安装脚本:php -r "unlink('composer-setup.php');"局...
2019-01-22 13:38:01
136
原创 PHP其它特性
字符串转代码eval()eval("echo 'Hello World';"); //等同于echo 'Hello World'常见的应用场景:从存储数据库中的代码及代码模板、循环生成代码等、可预见地修改脚本等、传递可执行代码。终止执行die()和exit()/*常规操作*/exit('Script is ending...');/*结合or操作*/mysql_query(...
2019-01-21 17:43:37
122
原创 PHP操作Mysql
1. 通过mysqli操作(mysql improved)大多数的mysqli函数支持面向对象和面向过程,通常两者区别在于面向过程的函数以mysqli_作为开头,并且需要传入数据库资源(mysql_connect()的返回值)。在操作数据库的时候,建议加上错误抑制符或者异常检测,因为IO操作是错误常发的地方,常用连接方式如下:/*面向对象的连接方式,返回对象,利用方法操作*/@$db = ...
2019-01-21 17:41:06
202
原创 基本异常处理
基本格式:try{ /* code block*/} catch(Exception $e){ # $e是异常类的实例对象 /* handle code */} finally{ /* finally code */}手动引发异常:throw new Exception($message, $code);Exception Class meth...
2019-01-21 17:39:25
132
原创 对象
声明:class classname{ function __construct($para) { /*code block*/ } function __destruct() { /*code block*/ }}实例化 new伪变量$this 和 self(两者基本一致,后者主要访问...
2019-01-21 17:37:43
106
原创 数组
数值索引类型1.声明方式:$test_array = array("value_1", "value_2", "value_3") # 利用array()$test_array = ["value_1", "value_2", "value_3"] # 利用[]声明,PHP
2019-01-21 17:35:07
105
原创 命名空间
命名空间命名空间的作用如同文件夹,同一文件夹下不允许存在同名文件,但是不同的文件夹却可以。命名空间主要用于解决以下两类问题:用户编写的代码与PHP内部的类/函数/常量或第三方类/函数/常量之间的名字冲突。为很长的标识符名称(通常是为了缓解第一类问题而定义的)创建一个别名(或简短)的名称,提高源代码的可读性声明命名空间:<?php namespace MyProject...
2019-01-21 17:32:30
115
原创 超全局变量、魔术变量、魔术函数
PHP中预定义9个超级全局变量,8个魔术变量和13个魔术函数。超全局变量$GLOBALS # 储存全局作用域中的变量$_SERVER # 获取服务器相关信息$_REQUEST # 获取POST和GET请求的参数$_GET # 获取GET请求方法的表单数据$_POST # 获取POST请求方法的表单数据$_F...
2019-01-21 17:29:46
550
原创 PHP基本语法
数据类型与运算:变量类型:integer string float boolean array object NULL resource callable。资源类型如数据库和文件,callable即被调用的函数声明变量和类型:$a = (float)0 ,变量申明符号为 $,如不声明则动态生成。常量定义: define("key": value) 常量只能定义为标量值。变量的变量:$...
2019-01-21 17:28:30
94
原创 用Laravel实现后台网站(初期)遇到问题及解决方法记录
虚拟机部分homestead配置访问名称[windows]下首先修改C:\Windows\System32\drivers\etc\host,将虚拟机IP与指定的名称绑定。192.168.10.10 news.test然后修改homestead.yaml(在安装文件夹下),绑定域名到特定项目的public文件夹。sites: - map: news.test to:...
2019-01-21 17:12:54
592
原创 Laravel安装及使用中踩的坑
提示没有vender:composer install,如果提示php版本不够安装失败,可以降低laravel版本或升级php版本打开public/index提示500错误:将.env.example复制更名为.env在项目目录下输入php artisan key:generate此时.env中会自动生成APP_KEY,重新运行即可编译器问题:.env文件无法用...
2019-01-21 17:07:59
541
原创 [LeetCode] Roman_To_Integer_20190116
题目:Leetcode等级easy:Roman numerals are represented by seven different symbols: I, V, X, L, C, D and M.Symbol ValueI 1V 5X 10L 50C ...
2019-01-16 11:19:33
229
4
原创 [LeetCode] Palindrome_Number_20190115
题目:Leetcode等级easy:Determine whether an integer is a palindrome. An integer is a palindrome when it reads the same backward as forward.Follow up:Coud you solve it without converting the integer to ...
2019-01-15 10:52:56
133
原创 [LeetCode] Reverse_Integer_20190114
题目leetcode难度等级: easyGiven a 32-bit signed integer, reverse digits of an integer.Note:Assume we are dealing with an environment which could only store integers within the 32-bit signed integer rang...
2019-01-14 14:52:53
211
原创 PHP在与HTML及Mysql交互时造成的中文乱码问题
PHP在与前端和Mysql交互的时候,遇到中文编码错误问题。之前也遇到过,当时仅仅是在数据库部分遇到,时间长了没有做记录就忘了。现在把这三个东西在交互的时候遇到编码问题时的常规解决方法总结归纳如下。HTML部分如果是html在head中添加:<meta http-equiv="Content-Type" content="text
2019-01-10 17:38:28
551
原创 [LeetCode] Two_Sum_20190110
题目:这是一道Leetcode上等级为easy的题目:Given an array of integers, return indices of the two numbers such that they add up to a specific target.You may assume that each input would have exactly one solution, a...
2019-01-10 13:11:52
99
原创 使用Python建立和维护爬虫代理IP池
IP_Pool前言刚好前段时间突然萌发了自己做一个代理池的想法,于是就用了一些通俗的方法来实现,一来能方便自己理解,二来也加强学习。这里开放给大家,给大家提供一点参考,使用前请务必要仔细查看README.md文件。Github:Proxy_IP_Pool总体构思定期从公开的代理网站上采集ip,在进行初次验证后进行格式化并保存到指定文件;定期检测已存ip的有效性;提供api接口查看...
2018-11-09 15:09:20
1454
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人