From c67a976f6104d6c98cba9ba05df1f4d13410224d Mon Sep 17 00:00:00 2001 From: RainSun Date: Sat, 4 Apr 2020 08:45:22 +0800 Subject: [PATCH] support docker --- Dockerfile | 9 ++ ReadMe.md | 7 +- ccb.py | 8 +- canary.png => docker/canary.png | Bin docker/data.json | 74 +++++++++++++++ start.sh => docker/start.sh | 0 getDb.py | 125 +++++++++++++++++++++++++ go.sh | 3 + gunicorn.conf.py | 3 +- lib/db.py | 2 +- logs/acess.log | 103 --------------------- logs/error.log | 159 -------------------------------- requirements.txt | 4 + test.py | 34 ------- 14 files changed, 224 insertions(+), 307 deletions(-) create mode 100644 Dockerfile rename canary.png => docker/canary.png (100%) create mode 100644 docker/data.json rename start.sh => docker/start.sh (100%) create mode 100644 getDb.py create mode 100644 go.sh delete mode 100644 logs/acess.log delete mode 100644 logs/error.log create mode 100644 requirements.txt delete mode 100644 test.py diff --git a/Dockerfile b/Dockerfile new file mode 100644 index 0000000..618438a --- /dev/null +++ b/Dockerfile @@ -0,0 +1,9 @@ +FROM python:3.7-alpine + +COPY requirements.txt /app/requirements.txt +WORKDIR /app +RUN pip install -r requirements.txt -i https://pypi.tuna.tsinghua.edu.cn/simple +COPY . /app + +# ENTRYPOINT ["sh"] +# CMD ["go.sh"] \ No newline at end of file diff --git a/ReadMe.md b/ReadMe.md index bc95007..b9f40c3 100644 --- a/ReadMe.md +++ b/ReadMe.md @@ -7,11 +7,8 @@ python3 -m venv venv . venv/bin/activate // 升级pip pip install --upgrade pip -// 安装flask... -pip install Flask -pip install gunicorn -pip install pymongo -pip install flask_cors +// 根据依赖文件安装环境 +pip install -r requirements.txt // 设置全局变量 export FLASK_APP=ccb.py export FLASK_ENV=development diff --git a/ccb.py b/ccb.py index c5763e4..5147581 100644 --- a/ccb.py +++ b/ccb.py @@ -7,17 +7,17 @@ from allFunction import manageLogin, manageActivation, manageDownload, manageUpl app = Flask(__name__) # 引入跨域访问处理模块 -# from flask_cors import CORS +from flask_cors import CORS # 取消跨域访问限制,方便本地测试 注册CORS, "/*" 允许访问所有api -# CORS(app, resources=r'/*') +CORS(app, resources=r'/*') if __name__ == '__main__': - app.run() + app.run(host="0.0.0.0", debug=True, port="80") # 测试用根路由 @app.route('/api/') def sayHello(): - return 'Hello! Glad to serve you, please go to the official website: https://ccb.canary.moe' + return 'Hello! Glad to serve you, please go to the official website: https://api.canary.moe' # 登录或者注册 @app.route('/api/login', methods=["POST"]) diff --git a/canary.png b/docker/canary.png similarity index 100% rename from canary.png rename to docker/canary.png diff --git a/docker/data.json b/docker/data.json new file mode 100644 index 0000000..acda19c --- /dev/null +++ b/docker/data.json @@ -0,0 +1,74 @@ +[ + { + "active": true, + "password": "/3pLO7ZGxs3/aZc4c/iCOg==", + "mail_addr": "531347509@qq.com", + "codebook": "", + "update_time": 1582296754436, + "uuid": "2020022122523278" + }, + { + "active": true, + "password": "418VcZRUba306D1v+K+8ew==", + "mail_addr": "1362604986@qq.com", + "codebook": "", + "update_time": 1582364460140, + "uuid": "20200222174100010" + }, + { + "active": true, + "password": "5iKuM+zMqbZTTB27mm9yAg==", + "mail_addr": "1597291489@qq.com", + "codebook": "", + "update_time": 1582703170957, + "uuid": "2020022615461093" + }, + { + "active": false, + "codebook": "", + "mail_addr": "1269149065@qq.com", + "password": "NY/XYq1cZzhnkmYZ0p78SA==", + "update_time": 1584775865277, + "uuid": "2020032115310340" + }, + { + "active": true, + "codebook": "vD6yeixdD2VlNduZOCli9OzfOpsJL8O/cv4bsKeR7Flk5+W0KQy4oVl0iUNqtMNHSvhCeVtAO5PC1DfLbk6eTrktevo6m0Ab2H7xMlB3cRGLSyl+vohRT1jwHOb98xh97w9D34ZvLVzj/lSzFYNXG7m0JkAAq/TiTu9ZGeM1TMOIeT6j6UkoVEBG77AHHBbGPAMbE9DdaD6u31WAN2yeJQ==", + "mail_addr": "cyw13089178067@outlook.com", + "password": "u52FaDeXCxxTEJnGIJN3cA==", + "update_time": 1585279034908, + "uuid": "2020032711111912" + }, + { + "active": false, + "codebook": "", + "mail_addr": "cyw16089178097@outlook.com", + "password": "u52FaDeXCxxTEJnGIJN3cA==", + "update_time": 1585279285143, + "uuid": "2020032711212727" + }, + { + "active": false, + "password": "Qtenmdk6Y6748iFGLucurg==", + "mail_addr": "1428255238@QQ.COM", + "codebook": "", + "update_time": 1585475457680, + "uuid": "2020032917515070" + }, + { + "active": true, + "codebook": "1aTyzjHbSCCgFvgMcufJRYA1QojFQwwuToukZ8CzcwKwyuUtZoTV5Z6YfzoDSZ2tb4uRzPnHYtrt7OJZ7IyPBOeUlfI82d52ubwes5l77tx5uT7IIBDBzuU/y2sxKf1gfZtKRGyws7iv150oCZMqwTCHmGQZ+g+gqzGP48Pwme2o3vmQF/Au+cMmv217JTymwhJmKpBS/OeYRrJOV+xmshsd2xReppKP7MjiEWIxk9OgcLPaZAjDK+LgMUAqjjjIai+eGyqRe5B4FoPtznEiSGLHeIc79nVeGPT0hrXE1pmE/lP632vk1cPP7zDmWVpRhUA2FI14IBnojc1PYv0U5A4hr22D+cRN7GPFDLzG6cmSsiEUkaVFQiP57DqmKfXdNrnH4ZNly6ZHCGb/TozPhasQB2vFjV/MM0QgUqXjMhLWUPxE/M4yYQ9dU+JBH1wS4HU973LfP90Gmyq7EY0+O3EsXv+FJKpS5fXxMxHkRJ1DWe41qXnGaUotiyngG5RSM/0cCndHbnva+Ol1YdCyWXGUjlH4vpwB+9YDMdG+aKxHWtAq6PX795OPNkjJwzu33d9xG0MVnIqJ4hTuBYt2oE+O43VvLO3x7ZaYVczXLtJarkTEXH2ZVq+tA5v1InXcai+eGyqRe5B4FoPtznEiSPEjlHINmG5px+iqcCNQOA84os4zt6mOvtR81gRZXLIxMIeYZBn6D6CrMY/jw/CZ7aje+ZAX8C75wya/bXslPKYcO0pIMACwiZpO2eHgrFrYP/QMijhDpLbjVRNzaElvBU6pfvKHWFNkHja9jkr1p2xdpXXYxVyO/eetG6uW0uThj/DY1hNWxZ/HQ+O45nHNsBeKNO+mKffvy+QHUQB2dNYL8zQYQfXUI0AJTtic8qxfcZSOUfi+nAH71gMx0b5orB5gCn53qlB/LBg7c8Jq6w7s4pJ24JqMuT7h3LmnjJtycaq+TzgAmZH7MTTkNKkO/JmmADZWJ1bdX4LCkMdAMMbnlJXyPNnedrm8HrOZe+7cebk+yCAQwc7lP8trMSn9YFNEK6CFT+ozxmrz4ksA1YpQOdsRsPPCKxmndjxJqgYY3+MQal9jtGQr9WtAGxsQV+UN/tbi5unwpmvCDDzW5fIK3NSkQta86baUZngxxqSOWx1qVQkQ0z2lWUXj7qVCh/Bpn+VNPsEGT+qSr81Hv4RrNmBwU/9Cl6ElKXSEiMhajsKVWXveUMZ+k7IRYInY3qPA/hdbwjxKfnrlsZ3wainH+uN0tUJPFp4rK2RHOhtGA7jAgt0v0t6Yws8lha8yFgTNFziJJLif+RQEHKEeb+uGxiRvs48xhggUPuFuDtUqI6xcAtIkWMMcYExxOCM6x+dbGbKFdGLri14qYeYxFPYgHJeJv0YW3+WEczmwJqWULsUR1aZVm9L3cn22881DIcCAjjlhEQb6DEFaJW5sq6lQOdsRsPPCKxmndjxJqgYY3+MQal9jtGQr9WtAGxsQV2vV4rcuuLYdsMYAKqMjAs3FmrOwbOlYL5C6xyC+EjjIjtXbnYZCa1lnflv0hvO+HMy0bvXeTJQnDU7YSssghDyAeCZYNWwe+HNT0V+h+A5fuweiJ6gvwNbhXUQpxRHzYj6nlwS5jOZwCFyu9SVAE5WBNjz+wUFLQTN9vclygiHWPKtJ+3/bmhiqQ89BoAnoLw==", + "mail_addr": "1428255238@qq.com", + "password": "Qtenmdk6Y6748iFGLucurg==", + "update_time": 1585475735916, + "uuid": "2020022122560528" + }, + { + "active": true, + "codebook": "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", + "mail_addr": "1144131090@qq.com", + "password": "hrtJQ87gz8Na7nqLTWfmQg==", + "update_time": 1585575411354, + "uuid": "2020022119314324" + } +] \ No newline at end of file diff --git a/start.sh b/docker/start.sh similarity index 100% rename from start.sh rename to docker/start.sh diff --git a/getDb.py b/getDb.py new file mode 100644 index 0000000..eeeaa3f --- /dev/null +++ b/getDb.py @@ -0,0 +1,125 @@ +from pymongo import MongoClient +import re +import json +import os +import time + +# 主环境 (生产环境为production,开发环境为development) +setting = 'development' + +# 获取数据集 +def col(arg): + conn = MongoClient('mongodb://ccb:wL2wG2aD6aI1@0.0.0.0:27017/ccb') + if setting == 'development': + arg += '_test' + if arg == 'user_info': + return conn.ccb.user_info + elif arg == 'user_info_test': + return conn.ccb.user_info_test + else: + return False + +def logData(): + user_list = [] + try: + for i in col('user_info').find({},{"_id":0}): + if i.get('_id'): + i.pop('_id') + user_list.append(i) + return (user_list, 200) + except Exception as e: + print(e) + return ('数据库查询失败', 111) + +def getImg(): + content = logData() + if content[-1] != 200: + return + content = json.dumps(content[0]).encode() + # 获取当前绝对地址 + path = os.path.abspath('.') + # 拼接新地址 + path = os.path.join(path,'data') + # 创建文件夹 + os.mkdir(path) + folder_url = path + file_url = os.path.join(folder_url,'data.json') + with open(file_url, 'wb') as f: + f.write(content) + time.sleep(1) + print('写入成功') + +def clear(): + col('user_info').remove({}) + +# 插入一个新的用户 +def insertUser(data): + try: + col('user_info').insert_one(data) + except Exception as e: + # 插入失败 + return {'errcode': 103, 'errmsg': '新用户插入失败'} + return {'errcode': 200, 'errmsg': '新用户插入成功'} + +user_list = [ + { + "active": True, + "password": "/3pLO7ZGxs3/aZc4c/iCOg==", + "mail_addr": "531347509@qq.com", + "codebook": "", + "update_time": 1582296754436, + "uuid": "2020022122523278" + }, + { + "active": True, + "password": "418VcZRUba306D1v+K+8ew==", + "mail_addr": "1362604986@qq.com", + "codebook": "", + "update_time": 1582364460140, + "uuid": "20200222174100010" + }, + { + "active": True, + "password": "5iKuM+zMqbZTTB27mm9yAg==", + "mail_addr": "1597291489@qq.com", + "codebook": "", + "update_time": 1582703170957, + "uuid": "2020022615461093" + }, + { + "active": True, + "codebook": "vD6yeixdD2VlNduZOCli9OzfOpsJL8O/cv4bsKeR7Flk5+W0KQy4oVl0iUNqtMNHSvhCeVtAO5PC1DfLbk6eTrktevo6m0Ab2H7xMlB3cRGLSyl+vohRT1jwHOb98xh97w9D34ZvLVzj/lSzFYNXG7m0JkAAq/TiTu9ZGeM1TMOIeT6j6UkoVEBG77AHHBbGPAMbE9DdaD6u31WAN2yeJQ==", + "mail_addr": "cyw13089178067@outlook.com", + "password": "u52FaDeXCxxTEJnGIJN3cA==", + "update_time": 1585279034908, + "uuid": "2020032711111912" + }, + { + "active": True, + "codebook": "1aTyzjHbSCCgFvgMcufJRYA1QojFQwwuToukZ8CzcwKwyuUtZoTV5Z6YfzoDSZ2tb4uRzPnHYtrt7OJZ7IyPBOeUlfI82d52ubwes5l77tx5uT7IIBDBzuU/y2sxKf1gfZtKRGyws7iv150oCZMqwTCHmGQZ+g+gqzGP48Pwme2o3vmQF/Au+cMmv217JTymwhJmKpBS/OeYRrJOV+xmshsd2xReppKP7MjiEWIxk9OgcLPaZAjDK+LgMUAqjjjIai+eGyqRe5B4FoPtznEiSGLHeIc79nVeGPT0hrXE1pmE/lP632vk1cPP7zDmWVpRhUA2FI14IBnojc1PYv0U5A4hr22D+cRN7GPFDLzG6cmSsiEUkaVFQiP57DqmKfXdNrnH4ZNly6ZHCGb/TozPhasQB2vFjV/MM0QgUqXjMhLWUPxE/M4yYQ9dU+JBH1wS4HU973LfP90Gmyq7EY0+O3EsXv+FJKpS5fXxMxHkRJ1DWe41qXnGaUotiyngG5RSM/0cCndHbnva+Ol1YdCyWXGUjlH4vpwB+9YDMdG+aKxHWtAq6PX795OPNkjJwzu33d9xG0MVnIqJ4hTuBYt2oE+O43VvLO3x7ZaYVczXLtJarkTEXH2ZVq+tA5v1InXcai+eGyqRe5B4FoPtznEiSPEjlHINmG5px+iqcCNQOA84os4zt6mOvtR81gRZXLIxMIeYZBn6D6CrMY/jw/CZ7aje+ZAX8C75wya/bXslPKYcO0pIMACwiZpO2eHgrFrYP/QMijhDpLbjVRNzaElvBU6pfvKHWFNkHja9jkr1p2xdpXXYxVyO/eetG6uW0uThj/DY1hNWxZ/HQ+O45nHNsBeKNO+mKffvy+QHUQB2dNYL8zQYQfXUI0AJTtic8qxfcZSOUfi+nAH71gMx0b5orB5gCn53qlB/LBg7c8Jq6w7s4pJ24JqMuT7h3LmnjJtycaq+TzgAmZH7MTTkNKkO/JmmADZWJ1bdX4LCkMdAMMbnlJXyPNnedrm8HrOZe+7cebk+yCAQwc7lP8trMSn9YFNEK6CFT+ozxmrz4ksA1YpQOdsRsPPCKxmndjxJqgYY3+MQal9jtGQr9WtAGxsQV+UN/tbi5unwpmvCDDzW5fIK3NSkQta86baUZngxxqSOWx1qVQkQ0z2lWUXj7qVCh/Bpn+VNPsEGT+qSr81Hv4RrNmBwU/9Cl6ElKXSEiMhajsKVWXveUMZ+k7IRYInY3qPA/hdbwjxKfnrlsZ3wainH+uN0tUJPFp4rK2RHOhtGA7jAgt0v0t6Yws8lha8yFgTNFziJJLif+RQEHKEeb+uGxiRvs48xhggUPuFuDtUqI6xcAtIkWMMcYExxOCM6x+dbGbKFdGLri14qYeYxFPYgHJeJv0YW3+WEczmwJqWULsUR1aZVm9L3cn22881DIcCAjjlhEQb6DEFaJW5sq6lQOdsRsPPCKxmndjxJqgYY3+MQal9jtGQr9WtAGxsQV2vV4rcuuLYdsMYAKqMjAs3FmrOwbOlYL5C6xyC+EjjIjtXbnYZCa1lnflv0hvO+HMy0bvXeTJQnDU7YSssghDyAeCZYNWwe+HNT0V+h+A5fuweiJ6gvwNbhXUQpxRHzYj6nlwS5jOZwCFyu9SVAE5WBNjz+wUFLQTN9vclygiHWPKtJ+3/bmhiqQ89BoAnoLw==", + "mail_addr": "1428255238@qq.com", + "password": "Qtenmdk6Y6748iFGLucurg==", + "update_time": 1585475735916, + "uuid": "2020022122560528" + }, + { + "active": True, + "codebook": "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", + "mail_addr": "1144131090@qq.com", + "password": "hrtJQ87gz8Na7nqLTWfmQg==", + "update_time": 1585575411354, + "uuid": "2020022119314324" + } +] + +def insertData(): + fail_list = [] + clear() + for user in user_list: + insert_res = insertUser(user) + if insert_res['errcode'] != 200: + fail_list.append(user) + for i in fail_list: + print(i) + print('ok') +insertData() \ No newline at end of file diff --git a/go.sh b/go.sh new file mode 100644 index 0000000..e87c81f --- /dev/null +++ b/go.sh @@ -0,0 +1,3 @@ +#!/bin/sh +echo start +gunicorn ccb:app -c gunicorn.conf.py \ No newline at end of file diff --git a/gunicorn.conf.py b/gunicorn.conf.py index 425b510..82c9ec4 100644 --- a/gunicorn.conf.py +++ b/gunicorn.conf.py @@ -1,7 +1,8 @@ # 并行工作线程数 workers = 4 # 监听内网端口5000【按需要更改】 -bind = '127.0.0.1:5005' +# bind = '127.0.0.1:5001' +bind = '0.0.0.0:80' # 设置守护进程【关闭连接时,程序仍在运行】 daemon = True # 设置超时时间120s,默认为30s。按自己的需求进行设置 diff --git a/lib/db.py b/lib/db.py index e3bc8e3..1916278 100644 --- a/lib/db.py +++ b/lib/db.py @@ -7,7 +7,7 @@ setting = 'development' # 获取数据集 def col(arg): - conn = MongoClient('mongodb://ccb:srVgEGwTf4@localhost:27017/ccb') + conn = MongoClient('mongodb://ccb:wL2wG2aD6aI1@mongo:27017/ccb') if setting == 'development': arg += '_test' if arg == 'user_info': diff --git a/logs/acess.log b/logs/acess.log deleted file mode 100644 index f92bb72..0000000 --- a/logs/acess.log +++ /dev/null @@ -1,103 +0,0 @@ -127.0.0.1 - - [21/Feb/2020:16:34:13 +0800] "GET /api/ HTTP/1.0" 200 83 "-" "Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:72.0) Gecko/20100101 Firefox/72.0" -127.0.0.1 - - [21/Feb/2020:16:34:23 +0800] "GET /api/s HTTP/1.0" 302 215 "-" "Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:72.0) Gecko/20100101 Firefox/72.0" -127.0.0.1 - - [21/Feb/2020:16:34:23 +0800] "GET /api/ HTTP/1.0" 200 83 "-" "Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:72.0) Gecko/20100101 Firefox/72.0" -127.0.0.1 - - [21/Feb/2020:22:20:49 +0800] "POST /api/login HTTP/1.0" 200 62 "https://ccb.canary.moe/account" "Mozilla/5.0 (Linux; Android 9; ONEPLUS A5000 Build/PKQ1.180716.001; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/66.0.3359.158 Mobile Safari/537.36" -127.0.0.1 - - [21/Feb/2020:22:22:20 +0800] "POST /api/login HTTP/1.0" 200 62 "https://ccb.canary.moe/account" "Mozilla/5.0 (Linux; Android 9; ONEPLUS A5000 Build/PKQ1.180716.001; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/66.0.3359.158 Mobile Safari/537.36" -127.0.0.1 - - [21/Feb/2020:22:22:25 +0800] "POST /api/login HTTP/1.0" 200 62 "https://ccb.canary.moe/account" "Mozilla/5.0 (Linux; Android 9; ONEPLUS A5000 Build/PKQ1.180716.001; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/66.0.3359.158 Mobile Safari/537.36" -127.0.0.1 - - [21/Feb/2020:22:22:30 +0800] "POST /api/login HTTP/1.0" 200 62 "https://ccb.canary.moe/account" "Mozilla/5.0 (Linux; Android 9; ONEPLUS A5000 Build/PKQ1.180716.001; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/66.0.3359.158 Mobile Safari/537.36" -127.0.0.1 - - [21/Feb/2020:22:23:33 +0800] "POST /api/login HTTP/1.0" 200 73 "https://ccb.canary.moe/account" "Mozilla/5.0 (Linux; Android 9; ONEPLUS A5000 Build/PKQ1.180716.001; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/66.0.3359.158 Mobile Safari/537.36" -127.0.0.1 - - [21/Feb/2020:22:23:39 +0800] "POST /api/upload HTTP/1.0" 200 103 "https://ccb.canary.moe/account" "Mozilla/5.0 (Linux; Android 9; ONEPLUS A5000 Build/PKQ1.180716.001; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/66.0.3359.158 Mobile Safari/537.36" -127.0.0.1 - - [21/Feb/2020:22:24:09 +0800] "POST /api/upload HTTP/1.0" 200 103 "https://ccb.canary.moe/account" "Mozilla/5.0 (Linux; Android 9; ONEPLUS A5000 Build/PKQ1.180716.001; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/66.0.3359.158 Mobile Safari/537.36" -127.0.0.1 - - [21/Feb/2020:22:43:25 +0800] "POST /api/upload HTTP/1.0" 200 103 "https://ccb.canary.moe/account" "Mozilla/5.0 (Linux; Android 9; ONEPLUS A5000 Build/PKQ1.180716.001; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/66.0.3359.158 Mobile Safari/537.36" -127.0.0.1 - - [21/Feb/2020:22:44:04 +0800] "POST /api/login HTTP/1.0" 200 73 "https://ccb.canary.moe/account" "Mozilla/5.0 (Linux; Android 9; ONEPLUS A5000 Build/PKQ1.180716.001; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/66.0.3359.158 Mobile Safari/537.36" -127.0.0.1 - - [21/Feb/2020:22:52:33 +0800] "POST /api/login HTTP/1.0" 200 104 "https://ccb.canary.moe/account" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/79.0.3945.130 Safari/537.36" -127.0.0.1 - - [21/Feb/2020:22:52:53 +0800] "POST /api/activation HTTP/1.0" 200 73 "https://ccb.canary.moe/account" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/79.0.3945.130 Safari/537.36" -127.0.0.1 - - [21/Feb/2020:22:56:06 +0800] "POST /api/login HTTP/1.0" 200 104 "https://ccb.canary.moe/account" "Mozilla/5.0 (Linux; Android 10; V1914A Build/QP1A.190711.020; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/74.0.3729.186 Mobile Safari/537.36" -127.0.0.1 - - [21/Feb/2020:22:56:50 +0800] "POST /api/activation HTTP/1.0" 200 73 "https://ccb.canary.moe/account" "Mozilla/5.0 (Linux; Android 10; V1914A Build/QP1A.190711.020; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/74.0.3729.186 Mobile Safari/537.36" -127.0.0.1 - - [21/Feb/2020:23:05:18 +0800] "POST /api/upload HTTP/1.0" 200 103 "https://ccb.canary.moe/account" "Mozilla/5.0 (Linux; Android 9; ONEPLUS A5000 Build/PKQ1.180716.001; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/66.0.3359.158 Mobile Safari/537.36" -127.0.0.1 - - [21/Feb/2020:23:14:39 +0800] "POST /api/upload HTTP/1.0" 200 103 "https://ccb.canary.moe/account" "Mozilla/5.0 (Linux; Android 9; ONEPLUS A5000 Build/PKQ1.180716.001; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/66.0.3359.158 Mobile Safari/537.36" -127.0.0.1 - - [22/Feb/2020:14:35:23 +0800] "POST /api/upload HTTP/1.0" 200 103 "https://ccb.canary.moe/account" "Mozilla/5.0 (Linux; Android 9; ONEPLUS A5000 Build/PKQ1.180716.001; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/66.0.3359.158 Mobile Safari/537.36" -127.0.0.1 - - [22/Feb/2020:17:41:01 +0800] "POST /api/login HTTP/1.0" 200 104 "https://ccb.canary.moe/account" "Mozilla/5.0 (Linux; Android 10; YAL-AL10 Build/HUAWEIYAL-AL10; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/74.0.3729.186 Mobile Safari/537.36" -127.0.0.1 - - [22/Feb/2020:17:41:23 +0800] "POST /api/activation HTTP/1.0" 200 73 "https://ccb.canary.moe/account" "Mozilla/5.0 (Linux; Android 10; YAL-AL10 Build/HUAWEIYAL-AL10; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/74.0.3729.186 Mobile Safari/537.36" -127.0.0.1 - - [22/Feb/2020:17:46:18 +0800] "POST /api/upload HTTP/1.0" 200 103 "https://ccb.canary.moe/account" "Mozilla/5.0 (Linux; Android 9; ONEPLUS A5000 Build/PKQ1.180716.001; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/66.0.3359.158 Mobile Safari/537.36" -127.0.0.1 - - [22/Feb/2020:18:00:19 +0800] "POST /api/login HTTP/1.0" 200 73 "https://ccb.canary.moe/account" "Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:73.0) Gecko/20100101 Firefox/73.0" -127.0.0.1 - - [22/Feb/2020:18:00:21 +0800] "POST /api/download HTTP/1.0" 200 999 "https://ccb.canary.moe/account" "Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:73.0) Gecko/20100101 Firefox/73.0" -127.0.0.1 - - [22/Feb/2020:18:00:30 +0800] "POST /api/download HTTP/1.0" 200 999 "https://ccb.canary.moe/account" "Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:73.0) Gecko/20100101 Firefox/73.0" -127.0.0.1 - - [22/Feb/2020:18:00:43 +0800] "POST /api/upload HTTP/1.0" 200 103 "https://ccb.canary.moe/account" "Mozilla/5.0 (Linux; Android 9; ONEPLUS A5000 Build/PKQ1.180716.001; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/66.0.3359.158 Mobile Safari/537.36" -127.0.0.1 - - [22/Feb/2020:18:00:52 +0800] "POST /api/download HTTP/1.0" 200 999 "https://ccb.canary.moe/account" "Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:73.0) Gecko/20100101 Firefox/73.0" -127.0.0.1 - - [22/Feb/2020:18:02:44 +0800] "POST /api/download HTTP/1.0" 200 999 "https://ccb.canary.moe/account" "Mozilla/5.0 (Linux; Android 9; ONEPLUS A5000 Build/PKQ1.180716.001; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/66.0.3359.158 Mobile Safari/537.36" -127.0.0.1 - - [22/Feb/2020:18:05:16 +0800] "POST /api/login HTTP/1.0" 200 73 "https://ccb.canary.moe/account" "Mozilla/5.0 (Linux; Android 10; PCT-AL10 Build/HUAWEIPCT-AL10; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/74.0.3729.186 Mobile Safari/537.36" -127.0.0.1 - - [22/Feb/2020:18:05:20 +0800] "POST /api/download HTTP/1.0" 200 999 "https://ccb.canary.moe/account" "Mozilla/5.0 (Linux; Android 10; PCT-AL10 Build/HUAWEIPCT-AL10; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/74.0.3729.186 Mobile Safari/537.36" -127.0.0.1 - - [22/Feb/2020:18:10:41 +0800] "POST /api/download HTTP/1.0" 200 999 "http://localhost:8080/account" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/79.0.3945.130 Safari/537.36" -127.0.0.1 - - [22/Feb/2020:18:11:32 +0800] "POST /api/login HTTP/1.0" 200 73 "https://ccb.canary.moe/account" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/79.0.3945.130 Safari/537.36" -127.0.0.1 - - [22/Feb/2020:18:11:34 +0800] "POST /api/download HTTP/1.0" 200 999 "https://ccb.canary.moe/account" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/79.0.3945.130 Safari/537.36" -127.0.0.1 - - [22/Feb/2020:23:49:16 +0800] "POST /api/upload HTTP/1.0" 200 88 "https://ccb.canary.moe/account" "Mozilla/5.0 (Linux; Android 9; ONEPLUS A5000 Build/PKQ1.180716.001; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/66.0.3359.158 Mobile Safari/537.36" -127.0.0.1 - - [22/Feb/2020:23:59:28 +0800] "POST /api/download HTTP/1.0" 200 1220 "https://ccb.canary.moe/account" "Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:73.0) Gecko/20100101 Firefox/73.0" -127.0.0.1 - - [23/Feb/2020:00:37:22 +0800] "POST /api/login HTTP/1.0" 200 94 "https://ccb.canary.moe/account" "Mozilla/5.0 (Android 9; Mobile; rv:68.0) Gecko/68.0 Firefox/68.0" -127.0.0.1 - - [23/Feb/2020:00:38:11 +0800] "POST /api/activation HTTP/1.0" 200 76 "https://ccb.canary.moe/account" "Mozilla/5.0 (Android 9; Mobile; rv:68.0) Gecko/68.0 Firefox/68.0" -127.0.0.1 - - [23/Feb/2020:00:38:20 +0800] "POST /api/activation HTTP/1.0" 200 76 "https://ccb.canary.moe/account" "Mozilla/5.0 (Android 9; Mobile; rv:68.0) Gecko/68.0 Firefox/68.0" -127.0.0.1 - - [23/Feb/2020:10:24:51 +0800] "POST /api/download HTTP/1.0" 200 1220 "https://ccb.canary.moe/account" "Mozilla/5.0 (Linux; Android 9; ONEPLUS A5000 Build/PKQ1.180716.001; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/66.0.3359.158 Mobile Safari/537.36" -127.0.0.1 - - [23/Feb/2020:10:25:17 +0800] "POST /api/upload HTTP/1.0" 200 88 "https://ccb.canary.moe/account" "Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:73.0) Gecko/20100101 Firefox/73.0" -127.0.0.1 - - [23/Feb/2020:10:25:22 +0800] "POST /api/download HTTP/1.0" 200 1432 "https://ccb.canary.moe/account" "Mozilla/5.0 (Linux; Android 9; ONEPLUS A5000 Build/PKQ1.180716.001; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/66.0.3359.158 Mobile Safari/537.36" -127.0.0.1 - - [23/Feb/2020:10:35:10 +0800] "POST /api/upload HTTP/1.0" 200 88 "https://ccb.canary.moe/account" "Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:73.0) Gecko/20100101 Firefox/73.0" -127.0.0.1 - - [23/Feb/2020:12:02:24 +0800] "POST /api/upload HTTP/1.0" 200 88 "https://ccb.canary.moe/account" "Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:73.0) Gecko/20100101 Firefox/73.0" -127.0.0.1 - - [23/Feb/2020:12:02:38 +0800] "POST /api/download HTTP/1.0" 200 1432 "https://ccb.canary.moe/account" "Mozilla/5.0 (Linux; Android 9; ONEPLUS A5000 Build/PKQ1.180716.001; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/66.0.3359.158 Mobile Safari/537.36" -127.0.0.1 - - [23/Feb/2020:12:33:47 +0800] "POST /api/download HTTP/1.0" 200 1432 "https://ccb.canary.moe/account" "Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:73.0) Gecko/20100101 Firefox/73.0" -127.0.0.1 - - [23/Feb/2020:12:50:46 +0800] "POST /api/download HTTP/1.0" 200 1432 "https://ccb.canary.moe/account" "Mozilla/5.0 (Linux; Android 10; PCT-AL10 Build/HUAWEIPCT-AL10; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/74.0.3729.186 Mobile Safari/537.36" -127.0.0.1 - - [23/Feb/2020:12:51:40 +0800] "POST /api/download HTTP/1.0" 200 1432 "https://ccb.canary.moe/account" "Mozilla/5.0 (Linux; Android 10; PCT-AL10 Build/HUAWEIPCT-AL10; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/74.0.3729.186 Mobile Safari/537.36" -127.0.0.1 - - [23/Feb/2020:12:55:45 +0800] "POST /api/upload HTTP/1.0" 200 88 "https://ccb.canary.moe/account" "Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:73.0) Gecko/20100101 Firefox/73.0" -127.0.0.1 - - [23/Feb/2020:12:55:59 +0800] "POST /api/download HTTP/1.0" 200 2796 "https://ccb.canary.moe/account" "Mozilla/5.0 (Linux; Android 9; ONEPLUS A5000 Build/PKQ1.180716.001; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/66.0.3359.158 Mobile Safari/537.36" -127.0.0.1 - - [23/Feb/2020:13:22:05 +0800] "POST /api/upload HTTP/1.0" 200 88 "https://ccb.canary.moe/account" "Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:73.0) Gecko/20100101 Firefox/73.0" -127.0.0.1 - - [23/Feb/2020:13:22:31 +0800] "POST /api/download HTTP/1.0" 200 10668 "https://ccb.canary.moe/account" "Mozilla/5.0 (Linux; Android 9; ONEPLUS A5000 Build/PKQ1.180716.001; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/66.0.3359.158 Mobile Safari/537.36" -127.0.0.1 - - [23/Feb/2020:13:40:48 +0800] "POST /api/download HTTP/1.0" 200 10668 "http://localhost:8080/account" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/79.0.3945.130 Safari/537.36" -127.0.0.1 - - [23/Feb/2020:17:45:58 +0800] "POST /api/login HTTP/1.0" 200 58 "http://localhost:8080/account" "Mozilla/5.0 (iPhone; CPU iPhone OS 11_0 like Mac OS X) AppleWebKit/604.1.38 (KHTML, like Gecko) Version/11.0 Mobile/15A372 Safari/604.1" -127.0.0.1 - - [23/Feb/2020:17:46:00 +0800] "POST /api/download HTTP/1.0" 200 10668 "http://localhost:8080/account" "Mozilla/5.0 (iPhone; CPU iPhone OS 11_0 like Mac OS X) AppleWebKit/604.1.38 (KHTML, like Gecko) Version/11.0 Mobile/15A372 Safari/604.1" -127.0.0.1 - - [23/Feb/2020:19:50:27 +0800] "POST /api/login HTTP/1.0" 200 58 "http://localhost:8080/account" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/79.0.3945.130 Safari/537.36" -127.0.0.1 - - [23/Feb/2020:19:50:29 +0800] "POST /api/download HTTP/1.0" 200 10668 "http://localhost:8080/account" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/79.0.3945.130 Safari/537.36" -127.0.0.1 - - [23/Feb/2020:20:43:21 +0800] "POST /api/login HTTP/1.0" 200 94 "https://ccb.canary.moe/account" "Mozilla/5.0 (Android 9; Mobile; rv:68.0) Gecko/68.0 Firefox/68.0" -127.0.0.1 - - [23/Feb/2020:20:43:59 +0800] "POST /api/login HTTP/1.0" 200 58 "https://ccb.canary.moe/account" "Mozilla/5.0 (Android 9; Mobile; rv:68.0) Gecko/68.0 Firefox/68.0" -127.0.0.1 - - [23/Feb/2020:20:44:01 +0800] "POST /api/download HTTP/1.0" 200 10668 "https://ccb.canary.moe/account" "Mozilla/5.0 (Android 9; Mobile; rv:68.0) Gecko/68.0 Firefox/68.0" -127.0.0.1 - - [24/Feb/2020:08:04:16 +0800] "POST /api/download HTTP/1.0" 200 10668 "https://ccb.canary.moe/account" "Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:73.0) Gecko/20100101 Firefox/73.0" -127.0.0.1 - - [24/Feb/2020:08:53:02 +0800] "POST /api/download HTTP/1.0" 200 10668 "http://localhost:8080/account" "Mozilla/5.0 (iPhone; CPU iPhone OS 11_0 like Mac OS X) AppleWebKit/604.1.38 (KHTML, like Gecko) Version/11.0 Mobile/15A372 Safari/604.1" -127.0.0.1 - - [24/Feb/2020:11:37:49 +0800] "POST /api/login HTTP/1.0" 200 58 "https://ccb.canary.moe/account" "Mozilla/5.0 (Linux; Android 9; ONEPLUS A5000 Build/PKQ1.180716.001; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/66.0.3359.158 Mobile Safari/537.36" -127.0.0.1 - - [24/Feb/2020:11:40:24 +0800] "POST /api/login HTTP/1.0" 200 58 "http://localhost:8080/account" "Mozilla/5.0 (iPhone; CPU iPhone OS 11_0 like Mac OS X) AppleWebKit/604.1.38 (KHTML, like Gecko) Version/11.0 Mobile/15A372 Safari/604.1" -127.0.0.1 - - [24/Feb/2020:11:59:49 +0800] "POST /api/upload HTTP/1.0" 200 88 "http://localhost:8080/account" "Mozilla/5.0 (iPhone; CPU iPhone OS 11_0 like Mac OS X) AppleWebKit/604.1.38 (KHTML, like Gecko) Version/11.0 Mobile/15A372 Safari/604.1" -127.0.0.1 - - [24/Feb/2020:11:59:51 +0800] "POST /api/download HTTP/1.0" 200 44 "http://localhost:8080/account" "Mozilla/5.0 (iPhone; CPU iPhone OS 11_0 like Mac OS X) AppleWebKit/604.1.38 (KHTML, like Gecko) Version/11.0 Mobile/15A372 Safari/604.1" -127.0.0.1 - - [24/Feb/2020:12:00:02 +0800] "POST /api/upload HTTP/1.0" 200 88 "https://ccb.canary.moe/account" "Mozilla/5.0 (Linux; Android 9; ONEPLUS A5000 Build/PKQ1.180716.001; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/66.0.3359.158 Mobile Safari/537.36" -127.0.0.1 - - [24/Feb/2020:12:00:08 +0800] "POST /api/download HTTP/1.0" 200 10668 "http://localhost:8080/account" "Mozilla/5.0 (iPhone; CPU iPhone OS 11_0 like Mac OS X) AppleWebKit/604.1.38 (KHTML, like Gecko) Version/11.0 Mobile/15A372 Safari/604.1" -127.0.0.1 - - [24/Feb/2020:12:29:42 +0800] "POST /api/login HTTP/1.0" 200 58 "http://localhost:8080/account" "Mozilla/5.0 (iPhone; CPU iPhone OS 11_0 like Mac OS X) AppleWebKit/604.1.38 (KHTML, like Gecko) Version/11.0 Mobile/15A372 Safari/604.1" -127.0.0.1 - - [24/Feb/2020:12:29:49 +0800] "POST /api/download HTTP/1.0" 200 10668 "http://localhost:8080/account" "Mozilla/5.0 (iPhone; CPU iPhone OS 11_0 like Mac OS X) AppleWebKit/604.1.38 (KHTML, like Gecko) Version/11.0 Mobile/15A372 Safari/604.1" -127.0.0.1 - - [24/Feb/2020:12:40:48 +0800] "POST /api/login HTTP/1.0" 200 58 "https://ccb.canary.moe/account" "Mozilla/5.0 (Linux; Android 9; ONEPLUS A5000 Build/PKQ1.180716.001; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/66.0.3359.158 Mobile Safari/537.36" -127.0.0.1 - - [24/Feb/2020:12:40:49 +0800] "POST /api/download HTTP/1.0" 200 10668 "https://ccb.canary.moe/account" "Mozilla/5.0 (Linux; Android 9; ONEPLUS A5000 Build/PKQ1.180716.001; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/66.0.3359.158 Mobile Safari/537.36" -127.0.0.1 - - [24/Feb/2020:12:45:40 +0800] "POST /api/login HTTP/1.0" 200 58 "https://ccb.canary.moe/account" "Mozilla/5.0 (Android 9; Mobile; rv:68.0) Gecko/68.0 Firefox/68.0" -127.0.0.1 - - [24/Feb/2020:12:45:43 +0800] "POST /api/download HTTP/1.0" 200 10668 "https://ccb.canary.moe/account" "Mozilla/5.0 (Android 9; Mobile; rv:68.0) Gecko/68.0 Firefox/68.0" -127.0.0.1 - - [24/Feb/2020:15:36:50 +0800] "POST /api/login HTTP/1.0" 200 52 "https://ccb.canary.moe/account" "Mozilla/5.0 (Linux; Android 9; ONEPLUS A5000 Build/PKQ1.180716.001; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/66.0.3359.126 MQQBrowser/6.2 TBS/045120 Mobile Safari/537.36 V1_AND_SQ_8.2.7_1334_YYB_D QQ/8.2.7.4410 NetType/WIFI WebP/0.3.0 Pixel/1080 StatusBarHeight/64 SimpleUISwitch/1" -127.0.0.1 - - [24/Feb/2020:15:36:58 +0800] "POST /api/login HTTP/1.0" 200 58 "https://ccb.canary.moe/account" "Mozilla/5.0 (Linux; Android 9; ONEPLUS A5000 Build/PKQ1.180716.001; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/66.0.3359.126 MQQBrowser/6.2 TBS/045120 Mobile Safari/537.36 V1_AND_SQ_8.2.7_1334_YYB_D QQ/8.2.7.4410 NetType/WIFI WebP/0.3.0 Pixel/1080 StatusBarHeight/64 SimpleUISwitch/1" -127.0.0.1 - - [24/Feb/2020:15:36:59 +0800] "POST /api/download HTTP/1.0" 200 10668 "https://ccb.canary.moe/account" "Mozilla/5.0 (Linux; Android 9; ONEPLUS A5000 Build/PKQ1.180716.001; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/66.0.3359.126 MQQBrowser/6.2 TBS/045120 Mobile Safari/537.36 V1_AND_SQ_8.2.7_1334_YYB_D QQ/8.2.7.4410 NetType/WIFI WebP/0.3.0 Pixel/1080 StatusBarHeight/64 SimpleUISwitch/1" -127.0.0.1 - - [25/Feb/2020:08:19:59 +0800] "POST /api/upload HTTP/1.0" 200 88 "https://ccb.canary.moe/account" "Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:73.0) Gecko/20100101 Firefox/73.0" -127.0.0.1 - - [25/Feb/2020:08:28:41 +0800] "POST /api/download HTTP/1.0" 200 10860 "https://ccb.canary.moe/account" "Mozilla/5.0 (Linux; Android 9; ONEPLUS A5000 Build/PKQ1.180716.001; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/66.0.3359.158 Mobile Safari/537.36" -127.0.0.1 - - [25/Feb/2020:08:56:35 +0800] "POST /api/download HTTP/1.0" 200 10860 "https://ccb.canary.moe/account" "Mozilla/5.0 (Linux; Android 9; ONEPLUS A5000 Build/PKQ1.180716.001; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/66.0.3359.158 Mobile Safari/537.36" -127.0.0.1 - - [25/Feb/2020:08:56:47 +0800] "POST /api/download HTTP/1.0" 200 10860 "https://ccb.canary.moe/account" "Mozilla/5.0 (Linux; Android 9; ONEPLUS A5000 Build/PKQ1.180716.001; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/66.0.3359.158 Mobile Safari/537.36" -127.0.0.1 - - [25/Feb/2020:08:56:52 +0800] "POST /api/download HTTP/1.0" 200 10860 "https://ccb.canary.moe/account" "Mozilla/5.0 (Linux; Android 9; ONEPLUS A5000 Build/PKQ1.180716.001; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/66.0.3359.158 Mobile Safari/537.36" -127.0.0.1 - - [25/Feb/2020:08:56:54 +0800] "POST /api/download HTTP/1.0" 200 10860 "https://ccb.canary.moe/account" "Mozilla/5.0 (Linux; Android 9; ONEPLUS A5000 Build/PKQ1.180716.001; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/66.0.3359.158 Mobile Safari/537.36" -127.0.0.1 - - [25/Feb/2020:08:56:55 +0800] "POST /api/download HTTP/1.0" 200 10860 "https://ccb.canary.moe/account" "Mozilla/5.0 (Linux; Android 9; ONEPLUS A5000 Build/PKQ1.180716.001; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/66.0.3359.158 Mobile Safari/537.36" -127.0.0.1 - - [25/Feb/2020:08:56:57 +0800] "POST /api/download HTTP/1.0" 200 10860 "https://ccb.canary.moe/account" "Mozilla/5.0 (Linux; Android 9; ONEPLUS A5000 Build/PKQ1.180716.001; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/66.0.3359.158 Mobile Safari/537.36" -127.0.0.1 - - [25/Feb/2020:08:57:00 +0800] "POST /api/download HTTP/1.0" 200 10860 "https://ccb.canary.moe/account" "Mozilla/5.0 (Linux; Android 9; ONEPLUS A5000 Build/PKQ1.180716.001; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/66.0.3359.158 Mobile Safari/537.36" -127.0.0.1 - - [26/Feb/2020:08:22:22 +0800] "POST /api/login HTTP/1.0" 200 58 "http://localhost:8080/account" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/79.0.3945.130 Safari/537.36" -127.0.0.1 - - [26/Feb/2020:08:22:24 +0800] "POST /api/download HTTP/1.0" 200 10860 "http://localhost:8080/account" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/79.0.3945.130 Safari/537.36" -127.0.0.1 - - [26/Feb/2020:13:54:30 +0800] "POST /api/login HTTP/1.0" 200 58 "https://ccb.canary.moe/account" "Mozilla/5.0 (Linux; Android 9; ONEPLUS A5000 Build/PKQ1.180716.001; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/66.0.3359.158 Mobile Safari/537.36" -127.0.0.1 - - [26/Feb/2020:13:54:32 +0800] "POST /api/download HTTP/1.0" 200 10860 "https://ccb.canary.moe/account" "Mozilla/5.0 (Linux; Android 9; ONEPLUS A5000 Build/PKQ1.180716.001; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/66.0.3359.158 Mobile Safari/537.36" -127.0.0.1 - - [26/Feb/2020:15:46:26 +0800] "POST /api/login HTTP/1.0" 200 106 "https://ccb.canary.moe/account" "Mozilla/5.0 (Linux; Android 10; YAL-AL00 Build/HUAWEIYAL-AL00; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/74.0.3729.186 Mobile Safari/537.36" -127.0.0.1 - - [26/Feb/2020:15:47:06 +0800] "POST /api/activation HTTP/1.0" 200 58 "https://ccb.canary.moe/account" "Mozilla/5.0 (Linux; Android 10; YAL-AL00 Build/HUAWEIYAL-AL00; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/74.0.3729.186 Mobile Safari/537.36" -127.0.0.1 - - [26/Feb/2020:15:57:12 +0800] "POST /api/login HTTP/1.0" 200 52 "https://ccb.canary.moe/account" "Mozilla/5.0 (Linux; Android 10; YAL-AL00 Build/HUAWEIYAL-AL00; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/74.0.3729.186 Mobile Safari/537.36" -127.0.0.1 - - [26/Feb/2020:15:57:22 +0800] "POST /api/login HTTP/1.0" 200 52 "https://ccb.canary.moe/account" "Mozilla/5.0 (Linux; Android 10; YAL-AL00 Build/HUAWEIYAL-AL00; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/74.0.3729.186 Mobile Safari/537.36" -127.0.0.1 - - [26/Feb/2020:15:57:34 +0800] "POST /api/login HTTP/1.0" 200 52 "https://ccb.canary.moe/account" "Mozilla/5.0 (Linux; Android 10; YAL-AL00 Build/HUAWEIYAL-AL00; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/74.0.3729.186 Mobile Safari/537.36" -127.0.0.1 - - [26/Feb/2020:15:57:45 +0800] "POST /api/login HTTP/1.0" 200 58 "https://ccb.canary.moe/account" "Mozilla/5.0 (Linux; Android 10; YAL-AL00 Build/HUAWEIYAL-AL00; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/74.0.3729.186 Mobile Safari/537.36" -127.0.0.1 - - [27/Feb/2020:16:02:37 +0800] "POST /api/download HTTP/1.0" 200 10860 "https://ccb.canary.moe/account" "Mozilla/5.0 (Linux; Android 9; ONEPLUS A5000 Build/PKQ1.180716.001; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/66.0.3359.158 Mobile Safari/537.36" -127.0.0.1 - - [27/Feb/2020:16:03:11 +0800] "POST /api/upload HTTP/1.0" 200 88 "https://ccb.canary.moe/account" "Mozilla/5.0 (Linux; Android 9; ONEPLUS A5000 Build/PKQ1.180716.001; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/66.0.3359.158 Mobile Safari/537.36" -127.0.0.1 - - [28/Feb/2020:22:12:56 +0800] "POST /api/upload HTTP/1.0" 200 88 "https://ccb.canary.moe/account" "Mozilla/5.0 (Linux; Android 9; ONEPLUS A5000 Build/PKQ1.180716.001; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/66.0.3359.158 Mobile Safari/537.36" -127.0.0.1 - - [28/Feb/2020:22:13:10 +0800] "POST /api/upload HTTP/1.0" 200 88 "https://ccb.canary.moe/account" "Mozilla/5.0 (Linux; Android 9; ONEPLUS A5000 Build/PKQ1.180716.001; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/66.0.3359.158 Mobile Safari/537.36" -127.0.0.1 - - [28/Feb/2020:22:31:10 +0800] "POST /api/download HTTP/1.0" 200 11032 "https://ccb.canary.moe/account" "Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:73.0) Gecko/20100101 Firefox/73.0" -127.0.0.1 - - [29/Feb/2020:07:50:28 +0800] "POST /api/login HTTP/1.0" 200 52 "http://localhost:8080/account" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/80.0.3987.122 Safari/537.36" -127.0.0.1 - - [29/Feb/2020:07:51:21 +0800] "POST /api/login HTTP/1.0" 200 58 "http://localhost:8080/account" "Mozilla/5.0 (iPhone; CPU iPhone OS 13_2_3 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/13.0.3 Mobile/15E148 Safari/604.1" -127.0.0.1 - - [29/Feb/2020:08:01:31 +0800] "POST /api/download HTTP/1.0" 200 11032 "https://ccb.canary.moe/account" "Mozilla/5.0 (Android 9; Mobile; rv:68.0) Gecko/68.0 Firefox/68.0" diff --git a/logs/error.log b/logs/error.log deleted file mode 100644 index eaacd07..0000000 --- a/logs/error.log +++ /dev/null @@ -1,159 +0,0 @@ -[2020-02-21 16:33:20 +0800] [17128] [INFO] Starting gunicorn 20.0.4 -[2020-02-21 16:33:20 +0800] [17128] [INFO] Listening at: http://127.0.0.1:5005 (17128) -[2020-02-21 16:33:20 +0800] [17128] [INFO] Using worker: sync -[2020-02-21 16:33:20 +0800] [17131] [INFO] Booting worker with pid: 17131 -[2020-02-21 18:03:47 +0800] [17128] [INFO] Handling signal: term -[2020-02-21 18:03:47 +0800] [17131] [INFO] Worker exiting (pid: 17131) -[2020-02-21 18:03:47 +0800] [17128] [INFO] Shutting down: Master -[2020-02-21 18:20:16 +0800] [1283] [INFO] Starting gunicorn 20.0.4 -[2020-02-21 18:20:16 +0800] [1283] [INFO] Listening at: http://127.0.0.1:5005 (1283) -[2020-02-21 18:20:16 +0800] [1283] [INFO] Using worker: sync -[2020-02-21 18:20:16 +0800] [1286] [INFO] Booting worker with pid: 1286 -[2020-02-21 18:21:50 +0800] [1283] [INFO] Handling signal: term -[2020-02-21 18:21:50 +0800] [1286] [INFO] Worker exiting (pid: 1286) -[2020-02-21 18:21:50 +0800] [1283] [INFO] Shutting down: Master -[2020-02-21 22:10:36 +0800] [14188] [INFO] Starting gunicorn 20.0.4 -[2020-02-21 22:10:36 +0800] [14188] [INFO] Listening at: http://127.0.0.1:5005 (14188) -[2020-02-21 22:10:36 +0800] [14188] [INFO] Using worker: sync -[2020-02-21 22:10:36 +0800] [14191] [INFO] Booting worker with pid: 14191 -[2020-02-21 22:11:00 +0800] [14188] [INFO] Handling signal: term -[2020-02-21 22:11:00 +0800] [14191] [INFO] Worker exiting (pid: 14191) -[2020-02-21 22:11:00 +0800] [14188] [INFO] Shutting down: Master -[2020-02-21 22:11:21 +0800] [14679] [INFO] Starting gunicorn 20.0.4 -[2020-02-21 22:11:21 +0800] [14679] [INFO] Listening at: http://127.0.0.1:5005 (14679) -[2020-02-21 22:11:21 +0800] [14679] [INFO] Using worker: sync -[2020-02-21 22:11:21 +0800] [14682] [INFO] Booting worker with pid: 14682 -[2020-02-21 22:11:21 +0800] [14683] [INFO] Booting worker with pid: 14683 -[2020-02-21 22:11:21 +0800] [14684] [INFO] Booting worker with pid: 14684 -[2020-02-21 22:11:21 +0800] [14685] [INFO] Booting worker with pid: 14685 -[2020-02-21 22:22:08 +0800] [14679] [INFO] Handling signal: term -[2020-02-21 22:22:08 +0800] [14682] [INFO] Worker exiting (pid: 14682) -[2020-02-21 22:22:08 +0800] [14683] [INFO] Worker exiting (pid: 14683) -[2020-02-21 22:22:08 +0800] [14684] [INFO] Worker exiting (pid: 14684) -[2020-02-21 22:22:08 +0800] [14685] [INFO] Worker exiting (pid: 14685) -[2020-02-21 22:22:09 +0800] [14679] [INFO] Shutting down: Master -[2020-02-21 22:22:18 +0800] [21480] [INFO] Starting gunicorn 20.0.4 -[2020-02-21 22:22:18 +0800] [21480] [INFO] Listening at: http://127.0.0.1:5005 (21480) -[2020-02-21 22:22:18 +0800] [21480] [INFO] Using worker: sync -[2020-02-21 22:22:18 +0800] [21483] [INFO] Booting worker with pid: 21483 -[2020-02-21 22:22:18 +0800] [21484] [INFO] Booting worker with pid: 21484 -[2020-02-21 22:22:18 +0800] [21487] [INFO] Booting worker with pid: 21487 -[2020-02-21 22:22:18 +0800] [21490] [INFO] Booting worker with pid: 21490 -[2020-02-21 22:23:27 +0800] [21480] [INFO] Handling signal: term -[2020-02-21 22:23:27 +0800] [21490] [INFO] Worker exiting (pid: 21490) -[2020-02-21 22:23:27 +0800] [21483] [INFO] Worker exiting (pid: 21483) -[2020-02-21 22:23:27 +0800] [21484] [INFO] Worker exiting (pid: 21484) -[2020-02-21 22:23:27 +0800] [21487] [INFO] Worker exiting (pid: 21487) -[2020-02-21 22:23:28 +0800] [21480] [INFO] Shutting down: Master -[2020-02-21 22:23:32 +0800] [22251] [INFO] Starting gunicorn 20.0.4 -[2020-02-21 22:23:32 +0800] [22251] [INFO] Listening at: http://127.0.0.1:5005 (22251) -[2020-02-21 22:23:32 +0800] [22251] [INFO] Using worker: sync -[2020-02-21 22:23:32 +0800] [22259] [INFO] Booting worker with pid: 22259 -[2020-02-21 22:23:32 +0800] [22260] [INFO] Booting worker with pid: 22260 -[2020-02-21 22:23:32 +0800] [22261] [INFO] Booting worker with pid: 22261 -[2020-02-21 22:23:32 +0800] [22262] [INFO] Booting worker with pid: 22262 -[2020-02-22 20:04:39 +0800] [22259] [INFO] Worker exiting (pid: 22259) -[2020-02-22 20:04:39 +0800] [22260] [INFO] Worker exiting (pid: 22260) -[2020-02-22 20:04:39 +0800] [22251] [INFO] Handling signal: term -[2020-02-22 20:04:39 +0800] [22251] [INFO] Shutting down: Master -[2020-02-22 20:04:58 +0800] [779] [INFO] Starting gunicorn 20.0.4 -[2020-02-22 20:04:58 +0800] [779] [INFO] Listening at: http://127.0.0.1:5005 (779) -[2020-02-22 20:04:58 +0800] [779] [INFO] Using worker: sync -[2020-02-22 20:04:58 +0800] [790] [INFO] Booting worker with pid: 790 -[2020-02-22 20:04:58 +0800] [793] [INFO] Booting worker with pid: 793 -[2020-02-22 20:04:58 +0800] [796] [INFO] Booting worker with pid: 796 -[2020-02-22 20:04:58 +0800] [799] [INFO] Booting worker with pid: 799 -[2020-02-22 20:10:43 +0800] [779] [CRITICAL] WORKER TIMEOUT (pid:793) -[2020-02-22 20:10:43 +0800] [779] [CRITICAL] WORKER TIMEOUT (pid:796) -[2020-02-22 20:10:43 +0800] [796] [INFO] Worker exiting (pid: 796) -[2020-02-22 20:10:43 +0800] [793] [INFO] Worker exiting (pid: 793) -[2020-02-22 20:10:43 +0800] [779] [CRITICAL] WORKER TIMEOUT (pid:790) -[2020-02-22 20:10:43 +0800] [779] [CRITICAL] WORKER TIMEOUT (pid:799) -[2020-02-22 20:10:43 +0800] [790] [INFO] Worker exiting (pid: 790) -[2020-02-22 20:10:43 +0800] [799] [INFO] Worker exiting (pid: 799) -[2020-02-22 20:10:44 +0800] [1116] [INFO] Booting worker with pid: 1116 -[2020-02-22 20:10:44 +0800] [1117] [INFO] Booting worker with pid: 1117 -[2020-02-22 20:10:44 +0800] [1118] [INFO] Booting worker with pid: 1118 -[2020-02-22 20:10:44 +0800] [1119] [INFO] Booting worker with pid: 1119 -[2020-02-22 20:11:00 +0800] [779] [INFO] Handling signal: term -[2020-02-22 20:11:00 +0800] [1118] [INFO] Worker exiting (pid: 1118) -[2020-02-22 20:11:00 +0800] [1117] [INFO] Worker exiting (pid: 1117) -[2020-02-22 20:11:00 +0800] [1116] [INFO] Worker exiting (pid: 1116) -[2020-02-22 20:11:00 +0800] [1119] [INFO] Worker exiting (pid: 1119) -[2020-02-22 20:11:01 +0800] [779] [INFO] Shutting down: Master -[2020-02-22 20:11:19 +0800] [799] [INFO] Starting gunicorn 20.0.4 -[2020-02-22 20:11:19 +0800] [799] [INFO] Listening at: http://127.0.0.1:5005 (799) -[2020-02-22 20:11:19 +0800] [799] [INFO] Using worker: sync -[2020-02-22 20:11:19 +0800] [816] [INFO] Booting worker with pid: 816 -[2020-02-22 20:11:19 +0800] [817] [INFO] Booting worker with pid: 817 -[2020-02-22 20:11:19 +0800] [818] [INFO] Booting worker with pid: 818 -[2020-02-22 20:11:19 +0800] [823] [INFO] Booting worker with pid: 823 -[2020-02-22 20:16:53 +0800] [818] [INFO] Worker exiting (pid: 818) -[2020-02-22 20:16:53 +0800] [817] [INFO] Worker exiting (pid: 817) -[2020-02-22 20:16:53 +0800] [816] [INFO] Worker exiting (pid: 816) -[2020-02-22 20:16:53 +0800] [799] [INFO] Handling signal: term -[2020-02-22 20:16:53 +0800] [823] [INFO] Worker exiting (pid: 823) -[2020-02-22 20:16:53 +0800] [799] [INFO] Shutting down: Master -[2020-02-22 20:17:09 +0800] [791] [INFO] Starting gunicorn 20.0.4 -[2020-02-22 20:17:09 +0800] [791] [INFO] Listening at: http://127.0.0.1:5005 (791) -[2020-02-22 20:17:09 +0800] [791] [INFO] Using worker: sync -[2020-02-22 20:17:09 +0800] [808] [INFO] Booting worker with pid: 808 -[2020-02-22 20:17:09 +0800] [809] [INFO] Booting worker with pid: 809 -[2020-02-22 20:17:09 +0800] [810] [INFO] Booting worker with pid: 810 -[2020-02-22 20:17:09 +0800] [811] [INFO] Booting worker with pid: 811 -[2020-02-23 08:17:48 +0800] [808] [INFO] Worker exiting (pid: 808) -[2020-02-23 08:17:48 +0800] [791] [INFO] Handling signal: term -[2020-02-23 08:17:48 +0800] [810] [INFO] Worker exiting (pid: 810) -[2020-02-23 08:17:48 +0800] [809] [INFO] Worker exiting (pid: 809) -[2020-02-23 08:17:48 +0800] [811] [INFO] Worker exiting (pid: 811) -[2020-02-23 08:17:48 +0800] [791] [INFO] Shutting down: Master -[2020-02-23 08:18:08 +0800] [810] [INFO] Starting gunicorn 20.0.4 -[2020-02-23 08:18:08 +0800] [810] [INFO] Listening at: http://127.0.0.1:5005 (810) -[2020-02-23 08:18:08 +0800] [810] [INFO] Using worker: sync -[2020-02-23 08:18:08 +0800] [845] [INFO] Booting worker with pid: 845 -[2020-02-23 08:18:08 +0800] [854] [INFO] Booting worker with pid: 854 -[2020-02-23 08:18:08 +0800] [858] [INFO] Booting worker with pid: 858 -[2020-02-23 08:18:08 +0800] [857] [INFO] Booting worker with pid: 857 -[2020-02-23 08:21:22 +0800] [810] [CRITICAL] WORKER TIMEOUT (pid:857) -[2020-02-23 08:21:22 +0800] [810] [CRITICAL] WORKER TIMEOUT (pid:858) -[2020-02-23 08:21:22 +0800] [810] [CRITICAL] WORKER TIMEOUT (pid:845) -[2020-02-23 08:21:22 +0800] [857] [INFO] Worker exiting (pid: 857) -[2020-02-23 08:21:22 +0800] [858] [INFO] Worker exiting (pid: 858) -[2020-02-23 08:21:22 +0800] [845] [INFO] Worker exiting (pid: 845) -[2020-02-23 08:21:22 +0800] [810] [CRITICAL] WORKER TIMEOUT (pid:854) -[2020-02-23 08:21:22 +0800] [854] [INFO] Worker exiting (pid: 854) -[2020-02-23 08:21:22 +0800] [975] [INFO] Booting worker with pid: 975 -[2020-02-23 08:21:22 +0800] [976] [INFO] Booting worker with pid: 976 -[2020-02-23 08:21:22 +0800] [977] [INFO] Booting worker with pid: 977 -[2020-02-23 08:21:22 +0800] [978] [INFO] Booting worker with pid: 978 -[2020-02-23 10:31:58 +0800] [975] [INFO] Worker exiting (pid: 975) -[2020-02-23 10:31:58 +0800] [978] [INFO] Worker exiting (pid: 978) -[2020-02-23 10:31:58 +0800] [976] [INFO] Worker exiting (pid: 976) -[2020-02-23 10:31:58 +0800] [810] [INFO] Handling signal: term -[2020-02-23 10:31:58 +0800] [977] [INFO] Worker exiting (pid: 977) -[2020-02-23 10:31:58 +0800] [810] [INFO] Shutting down: Master -[2020-02-23 10:32:17 +0800] [920] [INFO] Starting gunicorn 20.0.4 -[2020-02-23 10:32:17 +0800] [920] [INFO] Listening at: http://127.0.0.1:5005 (920) -[2020-02-23 10:32:17 +0800] [920] [INFO] Using worker: sync -[2020-02-23 10:32:17 +0800] [937] [INFO] Booting worker with pid: 937 -[2020-02-23 10:32:17 +0800] [942] [INFO] Booting worker with pid: 942 -[2020-02-23 10:32:17 +0800] [943] [INFO] Booting worker with pid: 943 -[2020-02-23 10:32:17 +0800] [944] [INFO] Booting worker with pid: 944 -[2020-02-23 10:34:21 +0800] [920] [CRITICAL] WORKER TIMEOUT (pid:944) -[2020-02-23 10:34:21 +0800] [944] [INFO] Worker exiting (pid: 944) -[2020-02-23 10:34:21 +0800] [920] [CRITICAL] WORKER TIMEOUT (pid:937) -[2020-02-23 10:34:21 +0800] [920] [CRITICAL] WORKER TIMEOUT (pid:942) -[2020-02-23 10:34:21 +0800] [920] [CRITICAL] WORKER TIMEOUT (pid:943) -[2020-02-23 10:34:21 +0800] [942] [INFO] Worker exiting (pid: 942) -[2020-02-23 10:34:21 +0800] [943] [INFO] Worker exiting (pid: 943) -[2020-02-23 10:34:21 +0800] [937] [INFO] Worker exiting (pid: 937) -[2020-02-23 10:34:22 +0800] [1103] [INFO] Booting worker with pid: 1103 -[2020-02-23 10:34:22 +0800] [1104] [INFO] Booting worker with pid: 1104 -[2020-02-23 10:34:22 +0800] [1105] [INFO] Booting worker with pid: 1105 -[2020-02-23 10:34:22 +0800] [1106] [INFO] Booting worker with pid: 1106 -[2020-02-29 08:11:18 +0800] [920] [INFO] Handling signal: term -[2020-02-29 08:11:18 +0800] [1105] [INFO] Worker exiting (pid: 1105) -[2020-02-29 08:11:18 +0800] [1104] [INFO] Worker exiting (pid: 1104) -[2020-02-29 08:11:18 +0800] [1103] [INFO] Worker exiting (pid: 1103) -[2020-02-29 08:11:18 +0800] [1106] [INFO] Worker exiting (pid: 1106) -[2020-02-29 08:11:18 +0800] [920] [INFO] Shutting down: Master diff --git a/requirements.txt b/requirements.txt new file mode 100644 index 0000000..2b94404 --- /dev/null +++ b/requirements.txt @@ -0,0 +1,4 @@ +Flask +Flask-Cors +pymongo +gunicorn \ No newline at end of file diff --git a/test.py b/test.py deleted file mode 100644 index cf80123..0000000 --- a/test.py +++ /dev/null @@ -1,34 +0,0 @@ -# coding=utf-8 -import smtplib -from email.mime.text import MIMEText -# 发送纯文本格式的邮件 - -def sendMail(title, content, mailto_list): - msg = MIMEText(content, 'plain', 'utf-8') - #发送邮箱地址 - sender = 'canarycodebook@163.com' - #邮箱授权码,非登陆密码 - password = 'eTn49CftDfaytar' - #收件箱地址 - #receiver = '19xxxxxxx9@qq.com' - # mailto_list = ['1144131090@qq.com','nayiyewosile@qq.com'] #群发邮箱地址 - - #smtp服务器 - smtp_server = 'smtp.163.com' - #发送邮箱地址 - msg['From'] = sender - #收件箱地址 - #msg['To'] = receiver - msg['To'] =';'.join(mailto_list) #发送多人邮件写法 - #主题 - msg['Subject'] = title - - server = smtplib.SMTP(smtp_server,25) # SMTP协议默认端口是25 - server.login(sender,password) #ogin()方法用来登录SMTP服务器 - server.set_debuglevel(1) #打印出和SMTP服务器交互的所有信息。 - server.sendmail(sender,mailto_list,msg.as_string()) #msg.as_string()把MIMEText对象变成str server.quit() - - # 第一个参数为发送者,第二个参数为接收者,可以添加多个例如:['hello@163.com','xxx@qq.com',]# 第三个参数为发送的内容 - server.quit() - -sendMail('欢迎注册Canary Codebook', 'test', ['1144131090@qq.com']) \ No newline at end of file