Wechaty
老早就想搞一个微信机器人了,但之前的可爱猫只能在Windows上运行,还要下载指定版本微信,怪麻烦的,想着有没有类似Mirai之类的可以挂在Linux上的机器人。这几天发现了Wechaty满足我的需要。这次有了免费的Web版的了,不需要token就可以(购买的话200RMB/月,买不起买不起),我用的Python-wechaty,先用docker启动wechaty服务登录微信,在用python连接wechaty进行消息处理。以下教程摘自官方文档。
启动Web协议服务
12345678910111213141516docker pull wechaty/wechaty:latestexport WECHATY_LOG="verbose"export WECHATY_PUPPET="wechaty-puppet-wechat"export WECHATY_PUPPET_SERVER_PORT="8080"export WECHATY_TOKEN="python-wechaty-{uuid}&q ...
个人网盘
这几天看私人网盘的搭建,自己也想弄一个,就去找了教程
储存网盘最重要的部分就是储存了,网盘里会有很多文件,占用的空间也会很多,而且还要保证速度,还要便宜。作为白嫖党,最终由三个可以选择:Onedrive、Google Drive、阿里网盘前两个本以为有edu邮箱会有很大的储存空间,结果。。。
Onedirve介绍 用edu邮箱注册后确实会有1TB的储存空间,但由于国内学校一半都没有管理员,因此没有API权限,不能进行第三方挂载,也就是只能用官方的APP,有些不方便。但Onemanager可以用sharepoint来进行挂载,搭配上Heroku和Cloudflare体验也还不错,但只能上传和预览,无法删除移动等。
开发者意外得知 office 365 e5开发者也有5TB的空间,不过需要调用API活跃才能续期,每次三个月,可以用Github action 来刷。tips:最好再注册几个子账号来进行之后的操作,比如刷API一个账号,Cloudreve一个账号申请教程
基本流程:
先注册个人账号
完善信息
申请成为开发者,国家选择美国
点击【SET UP E5 SUBSCRIPTION】填 ...
docker
这几天学了一下docker的相关知识,记录一下
安装官网有教程
卸载旧版本12345678sudo yum remove docker \ docker-client \ docker-client-latest \ docker-common \ docker-latest \ docker-latest-logrotate \ docker-logrotate \ docker-engine
安装新版本需要centos7版本以上的
安装一些必要的系统工具:
1sudo yum install -y yum-utils device-mapper-persistent-data lvm2
添加软件源信息:
1sudo yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/d ...
autojs
今天本来想写一个作业帮审核的脚本,本想在浏览器上用js执行,结果忘记了跨域问题,写好了发现无法进行网络请求,本已放弃,无意中看到了autojs,也是用js来写脚本,不过有专门的app,这样也不用考虑跨域问题了。以后应该还会用到,用手机来执行脚本。
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135"ui"; //前面不能有任何字符ui.layout( <vertical> <text textS ...
Github action自动部署
前言前几天看到了GitHub action可以自动运行代码,试了一下Python,感觉不错,之后想到博客之前挂掉了,可以用这个来自动部署,于是搜了一下,果然有很多教程,但我还是弄了好久,记一下采坑过程。一共两个仓库,一个Hexo源文件+action,一个网站HTML等文件,用于访问。
配置私钥公钥因为换了电脑,之前的环境什么的都没有了,得重新生成。生成过程一直回车就好了。
私钥的配置:将生成的 private key 作为 Hexo 源文件仓库 Settings > Secrets 的 一个名叫 DEPLOY_KEY 的 Secret。注意:需要复制包括 -----BEGIN OPENSSH PRIVATE KEY----- 和 -----END OPENSSH PRIVATE KEY----- 的整个内容。Secret 相当于一个变量,可以使私有变量不公开。
公钥的配置:直接在这个链接点击那个new SSH key就可配置
添加Github action12345678910111213141516171819202122232425262728293031323334 ...
Jupyter搭建
利用Jupyter搭建在线Python编辑器
1. 创建虚拟环境123456789$ pip install virtualenv$ ln -s /usr/local/python3/bin/virtualenv /usr/bin/virtualenv$ mkdir jupyter #创建jupyter文件夹$ cd jupyter$ virtualenv venv #创建venv文件夹New python executable in venv/bin/pythonInstalling distribute............done.$ source venv/bin/activate #激活虚拟环境
2.安装Jupyter1$ pip install jupyter
3.配置 Jupyter Notebook生成配置文件,文件在 /root/.jupyter/jupyter_notebook_config.py
1$ jupyter notebook --gene ...
部署
gunicron安装1pip install gunicron
使用的目录在
1/usr/local/python3/bin/gunicorn
参数
-w: 代表启动4个进程,可以通过ps -ef | grep 9001可以看到四个PID;-b: 打标绑定的IP和端口号,0.0.0.1表示不仅仅能在本台机器上访问,外网也可以访问,绑定的为9001端口wsgi:app, wsgi代表文件名,app为对应到该文件中创建的Flask对象此外还有其他参数:–log-level LEVEL:表示日志级别,测试可以用DEBUG–timeout: 超时时间,单位是秒
启动1234#直接执行gunicorn -w 4 -b 127.0.0.1:5000 app:app #通过配置文件执行gunicorn -c config.py app:app
假如gunicorn命令不存在 可以用虚拟环境
关闭123#查看进程树pstree -ap|grep gunicornkill 进程即可退出 进程在/log/pid文件中
虚拟环境安装 ...
并发测试
并发测试 ab1. 安装1yum -y install httpd-tools
测试安装是否成功:
1234[root@vic html]# ab -VThis is ApacheBench, Version 2.3 <$Revision: 655654 $>Copyright 1996 Adam Twiss, Zeus Technology Ltd, http://www.zeustech.net/Licensed to The Apache Software Foundation, http://www.apache.org/
2. 参数说明
-n在测试会话中所执行的请求个数。默认时,仅执行一个请求。请求的总数量
-c一次产生的请求个数。默认是一次一个。请求的用户量
-t测试所进行的最大秒数。其内部隐含值是-n 50000,它可以使对服务器的测试限制在一个固定的总时间以内。默认时,没有时间限制。
-V显示版本号并退出。
3. 性能指标
吞吐量(Requests per second)
服务器并发处 ...
Python安装
安装 1
下载1234sudo mkdir /usr/local/python3wget https://www.python.org/ftp/python/3.7.6/Python-3.7.6.tgztar -xzvf Python-3.7.6.tgzcd Python-3.7.6
后面会缺少_ssl 在这里先安装
1yum install openssl-devel bzip2-devel expat-devel gdbm-devel readline-devel sqlite-devel gcc gcc-c++ openssl-devel
之后进去
1vi /root/Python-3.7.6/Modules/Setup.dist
修改结果如下:
12345678910111213141516# Socket module helper for socket(2)_socket socketmodule.c timemodule.c # Socket module helper for SSL support; you must comment out the other# so ...
nginx安装与配置
安装12345wget http://nginx.org/download/nginx-1.20.0.tar.gztar -zxvf nginx-1.20.0.tar.gzcd nginx-1.20.0./configure --prefix=/usr/local/nginx --with-http_ssl_modulemake && make install
配置配置文件
1234567891011121314server { listen 80; server_name 47.93.225.255; location / { proxy_pass http://127.0.0.1:5000; }}server { listen 81; server_name 47 ...