自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(194)
  • 收藏
  • 关注

原创 Django的signal笔记

django的signal

2023-01-10 18:04:44 959 1

原创 python数据写入csv、csv转excel、用Pandas把数据写入excel简单总结

这个没太多要说的,数据合适就是a,b 这样的格式,就像写入文件这样就行了,要注意的地方就是编码这块要用utf-8-sig,不然会乱码。一开始很是纠结写入excel 这样的问题,没想到用pandas还是很方便的。就是说这个方法,不是一个公开的方法,将来会移除,后来看源码。一开始写的save()的方法,然后出警告了。所以,就用close方法就可以了。这块也是利用pandas的功能。

2022-11-19 20:53:28 2330 1

原创 vue-router+nginx 非根路径配置方法

vue history模式 nginx location非根

2022-10-23 10:03:58 2068

原创 flask生成路由的2种方式和反向生成url

flask生成路由、反向生成url

2022-07-29 17:50:05 973

原创 flask的配置文件

flask的配置文件

2022-07-29 16:54:17 392

原创 简单的nginx日志切割脚本

nginx日志切割脚本、日志异地备份

2022-07-25 11:41:51 562

原创 python的压缩、异地备份脚本

用python实现文件压缩、异地备份

2022-07-25 11:35:37 220

原创 jenkins的文件参数,可以用来上传文件

jenkins上传文件

2022-07-21 18:07:46 5259 1

原创 jenkins的Role-based Authorization Strategy安装配置

jenkins的用户、角色、项目的权限配置

2022-07-21 16:55:07 275

原创 jenkins发布java项目和执行shell脚本nohup的总结

jenkins发布java项目,执行shell脚本的问题

2022-07-21 16:14:15 2713 1

原创 python运行docker容器

python运行docker容器

2022-06-16 00:17:00 2519

原创 paramiko和线程池Demo(快速批量操作服务器)

paramiko 线程池

2022-06-09 18:34:17 332 1

原创 python实现列表排序的各种方法

python列表排序

2022-06-09 12:00:29 8556 2

原创 shell script安装prometheus和node_exporter

一键安装普罗米修斯

2022-06-07 11:46:57 242

原创 js学习笔记函数(2)

// 记住结论即可var -> 创建变量let -> 创建变量const -> 创建常量 function fn(){ // 提前声明name, 这种现象叫变量提升 // 站在开发人员的角度分析. 是不合理的. console.log(name); var name = '大马猴'; // 正常人理解. 应该是报错的 浏览器会变成undefine // 新版本的js -> e

2022-05-29 11:14:49 98

原创 js学习笔记函数(1)

在JS中声明函数和python差不多. 也要有一个关键字顶在前面.python是def, 到了JS里换成了function只不过在JS中没有像python那么死板, 必须def后面必须跟上函数名. (很灵活,本质是内存中的一个地址)最开始的样子// 语法// 声明函数function 函数名(形参1, 形参2, 形参3....){ 函数体 return 返回值}// 调用函数函数名(实参1, 实参2, 实参3....)举个栗子function add(a, b){

2022-05-29 11:06:14 483

原创 js学习笔记数组和对象

数组在JS中创建数组非常简单. 直接[ ]即可. 也可以用正规军的new Array(). 不过效果都是一样的.var as = [11,22,33,44,55];var bs = new Array(11,22,33,44,55)常用操作arr.length; // 数组长度arr.push(data); // 在数组后面添加数据arr.pop(); // 删除数据, 从后面删除, 并返回被删除的内容arr.shift() // 删除数据, 从前面删除, 并返回被删除的内容ar

2022-05-29 10:32:33 107

原创 js学习笔记分支和循环

js分支除了HTML以外. 几乎所有的编程语言都有条件判断的功能. 比如, python, 我们用if语句来做条件判断. 到了javascript中也是一样的, 也使用javascript来做条件上的判断.if(条件1){ 代码块1} else { 代码块2}if(条件1){ 代码块1} else if(条件2) { 代码块2} else if(条件3) { 代码块3} ... { 代码块n} else { 代码块else}swi

2022-05-29 10:24:20 134

原创 js学习自增运算(a++,++a)的样例

<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <title>Title</title> <script> /* * a++ 这个表达式的值是a * ++a 这个表达式的值是a +1 * = 永远最后运行 */ var a = 1;

2022-05-26 10:51:06 206

原创 python调用kubernetesAPI简单使用

K8s也提供API接口,提供这个接口的是管理节点的apiserver组件,apiserver服务负责提供HTTP API,以便用户、其他组件相互通信。客户端库: https://kubernetes.io/zh/docs/reference/using-api/client-libraries/安装pip install kubernetes -i https://pypi.douban.com/simplek8s认证方式HTTPS 证书认证:基于CA证书签名的数字证书认证HTTP Toke

2022-05-18 21:17:27 3095 1

原创 简单记录Gunicorn(独角兽)与uWSGI

就是简单记录下,之前面试问到这个了,我补上这个首先两种都是实现WSGI协议的Web服务器,并且都是基于Perfork模型。其次Uwsgi是通过C语言编写的,Gnnicorn是通过Python语言编写的,相对于Uwsgi,Gunicorn相对于简单,启动也十分方便英文全称:Web Server Gateway Interface,Web服务网管接口,简单来说它是一种Web服务器和应用程序间的通信规范uWSGI是一个Web Server,并且独占uwsgi协议,但是同时支持WSGI协议、HTTP协议

2022-05-17 10:29:51 1516

原创 CrawlSpider全站爬取简单笔记

又来更新爬虫了,这回是scrapy的CrawlSpider全站爬取CrawlSpider 这个东西有个关键的东西叫 链接爬取器LinkExtractor(        allow=r'Items/',# 满足括号中“正则表达式”的值会被提取,如果为空,则全部匹配。         deny=xxx, # 满足正则表达式的则不会被提取。          restrict_xpaths=xxx, # 满足xpath表达式的值会被提取         restrict_css=x

2022-05-17 09:34:48 497

原创 python学习面向对象之类变量、实例变量执行顺序

看了人家老哥的栗子,一下对结果就懵逼了,然后掰开揉碎,一顿整 ,看代码的执行顺序。这才看明白。这老哥挺牛逼的 !面向对象还得整。# 综合栗子class PoloBlogObjectTest: # 类变量 sum = 0 # 初始化方法 def __init__(self, name, age): # 实例变量 self.name = name self.age = age # 类变量 pr

2022-04-24 17:30:25 858

原创 python-面向对象编程-实例方法、静态方法、类方法

实例方法举例class Girl: def __init__(self, name, age): print("自动调用构造方法") self.name = name self.age = age def hello(self): print("一个实例方法,需要通过对象调用") print("my name is :", self.name, " and my age is :", self.age)

2022-04-24 15:04:51 1035

原创 Dockerfile中的ENTRYPOINT和CMD的那些破事儿

ENTRYPOINT是 Dockerfile 定義的一個指令,他的作用類似於 CMD,都是在 container 啟動時會自動執行的指令,你可以不定義 CMD,然後改成定義 ENTRYPOINT,你的 container 照樣能夠啟動,如同你之前將命令寫在 CMD 一樣。那我們為什麼需要 ENTRYPOINT 呢?因為 ENTRYPOINT 不只擁有取代 CMD 的功能,更重要的還有與 CMD「合用」的功能,如果你同時定義了 ENTRYPOINT 與 CMD,那這兩個指令將會合而為一,組在一起執行。例

2022-04-24 12:01:27 457

原创 python的第三方异步模块gevent简单demo

Gevent是一个基于微线程库Greenlet的并发框架优点 只需要monkey.patch_all(),就能自动修改阻塞为非阻塞缺点 不知道具体patch了哪些库修改了哪些模块、类、函数,出问题不好调试安装pip install geventdemoimport geventfrom bs4 import BeautifulSoupfrom gevent import monkeymonkey.patch_all()import requestsdef get_page_s

2022-04-21 17:06:58 706

原创 python多线程和多进程简单对比

import mathfrom concurrent.futures import ThreadPoolExecutor, ProcessPoolExecutorimport timePRIMES = [112272535095293] * 100def is_prime(n): if n < 2: return False if n == 2: return True if n % 2 == 0: return..

2022-04-21 13:31:15 489

原创 python之selenium和xpath简单知晓国服魔兽世界正式服人口普查

最近想玩魔兽世界正式服,想找个联盟部落势均力敌的服务器,然后找到了网站100多个服务器,这上面还不能筛选,作为程序猿的我,就拿技术搞他。看了下F12源码,源码里没有数据,就想到xhr、js这东西。果断 network ,这货的数据果然是用ajax加载的。但是这个接口里看不到哪个优势这个数据,我估计他那个优势那个td是前端渲染出来的。看了一眼源码 ,就是这么干的 。这个是F12的element出来的结果这是源码的js这个是Ajax的接口数据这不太符合我的要求, 所以我决定上selen

2022-04-09 16:01:54 2774

原创 解读 SPF 认证验证结果

发件人策略框架 (SPF) 身份验证验证结果应在 SMTP 对话期间返回给发送邮件传输代理 (MTA)。检查验证结果时,请记住并非所有邮箱提供商都在其垃圾邮件过滤器中使用 SPF 身份验证。查找来自 Gmail、Yahoo!、AOL 和 Microsoft (Outlook.com) 等邮箱提供商的 SMTP 响应。如下所述的技术细节也可以在 RFC7208中找到。如果您需要创建或编辑您的 SPF 记录,请联系您的电子邮件管理员、电子邮件服务提供商 (ESP) 或域托管服务提供商。验证结果邮箱提供商报

2022-04-07 14:40:59 2705

原创 Django高级特性之django-apscheduler定时任务,给Django添加run,右键运行

今天搞了一天 终于搞出来了 ,后边改造的话,就可以把系统计划任务搞到Django里面,网上文章很乱,后边代码都是自己验证的 ,赶紧记录下来。django-apscheduler支持三种调度任务:固定时间间隔,固定时间点(日期),Crontab 命令。同时,它还支持异步执行、后台执行调度任务 配置简单、功能齐全、使用灵活、支持windows和linux,适合中小型项目。基础组件APScheduler 有四种组件,分别是:调度器(scheduler),作业存储(job store),触发器(tri

2022-04-02 19:01:25 10624 7

原创 xpath解析笔记

我们给出一段测试用的HTML代码. <!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8" /> <title>Title</title></head><body> <div> <p>一个很厉害的人</p> <ol>

2022-04-01 17:47:42 248

原创 Django+celery异步任务和定时任务(1)

看了好多文档,乱七八糟的,终于把celery搞懂了 。这就是个简单记录,方便查阅。首先就是建立一个django项目,开启一个app,基本流程走通。这个app就是celery的生产者项目python manager.py celery_producer最基本的,视图可以正常HttpResponse 就可以了,这就是基本流程走通建立一个package ,不是普通的目录 ,这个包作为celery的消费者他的目录结构如图所示OK 我们把代码填上tasks.pyfrom celery_co

2022-04-01 13:57:47 1488 1

原创 ansible安装mariadb

│ ├── mariadb-10.3.15-linux-glibc_214-x86_64.tar.gz│ └── my.cnf├── handlers│ └── main.yaml├── tasks│ ├── copy.yaml│ ├── install.yaml│ ├── main.yaml│ └── mysqld├── templates└── varsroot@jenkins:~/ansible/roles/mariadb/handlers# cat

2022-03-31 09:59:38 863

原创 ansible安装nginx

root@jenkins:~/ansible/roles/nginx# tree.├── nginx│ ├── files│ │ └── nginx-1.16.0.tar.gz│ ├── handlers│ │ └── main.yaml│ ├── tasks│ │ └── main.yaml│ ├── templates│ │ └── nginx.conf.bk│ └── vars└── nginx.yamlroot@jen

2022-03-31 09:43:17 633

原创 ansible安装jdk

root@jenkins:~/ansible/java/jdk-install# cat jdk.yml - hosts: '{{ server }}' tasks: - name: "拷贝安装包到远程" copy: src=/root/ansible/java/jdk-install/package/openjdk-11.0.2_linux-x64_bin.tar.gz dest=/usr/local/ - name: "解压jdk安装包" shell: chdir=/us

2022-03-31 09:33:06 1892

原创 Django的Ajax上传文件简单记录

运维后台需要写一个上传文件的功能,要用ajax上传,这两天看了些文档,把这个弄出来了。其实还是蛮简单的,这个文章就给记录下,方便查阅首先模板这边 <tr> <td><input type="file" name="upload" id="file_uploads" required/></td> <td><input type="button" onclick="uploads()" val

2022-03-25 15:55:46 2897

原创 ansible执行启动tomcat脚本后无进程

这个就是个记录,方便查找问题一开始就是shell 执行 ,没有这个问题,想改成ansible另外脚本不用写java的环境变量网上的办法都是说在catalina.sh加上java的环境变量,这个确实得加上JAVA_HOME=/usr/local/jdk但是我加上后,还是不起作用然后又找了找,好多千篇一律的文章,后来找到一个管用的在ansible执行启动脚本时,加一个“nohup”参数就可以解决ansible group -m shell -a 'nohup sh /server/scrip

2022-03-23 14:11:16 2440 1

原创 python装饰器代码的简单记录

装饰器通用模型def wrapper(fn): def inner(*args, **kwargs): ret = fn(*args, **kwargs) return ret return inner装饰器几个关键点"""1.函数可以当参数传递2.函数可以作为返回值进行返回3.函数名称可以当成变量一样进行赋值操作装饰器本质上是个闭包在不改变原有函数调用的情况下,给函数增加新的功能"""举个例子#!/usr/bin/python

2022-03-22 22:42:12 861

原创 简单记录Debian系统编译安装nginx1.20

建立nginx用户useradd -r -s /sbin/nologin nginx安装依赖包apt-get install build-essential make libpcre3 libpcre3-dev openssl libssl-dev libgd-dev zlib1g-dev openssl编译安装./configure --prefix=/data/nginx --user=nginx --group=nginx --with-compat --with-file-aio -

2022-03-18 15:19:17 349

原创 ansible简单使用记录

安装apt-get install ansible配置目录/etc/ansible/hosts端口如果修改了ssh端口,那么加这一行ansible_ssh_port=8888sudoansible_sudo_pass='123456'如果sudo免密,那么就不用加这行了 加上 --sudo参数就行–sudo 表示用sudo到root的方式执行对应的模块suansible_ssh_pass='123456'举个栗子[web]172.25.24.52 ansible_ss

2022-03-17 10:29:36 1443

空空如也

空空如也

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

TA关注的人

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