diff --git a/LICENSE b/LICENSE index 7ba1b9a..3b718db 100644 --- a/LICENSE +++ b/LICENSE @@ -1,201 +1,201 @@ - Apache License - Version 2.0, January 2004 - http://www.apache.org/licenses/ - - TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION - - 1. Definitions. - - "License" shall mean the terms and conditions for use, reproduction, - and distribution as defined by Sections 1 through 9 of this document. - - "Licensor" shall mean the copyright owner or entity authorized by - the copyright owner that is granting the License. - - "Legal Entity" shall mean the union of the acting entity and all - other entities that control, are controlled by, or are under common - control with that entity. For the purposes of this definition, - "control" means (i) the power, direct or indirect, to cause the - direction or management of such entity, whether by contract or - otherwise, or (ii) ownership of fifty percent (50%) or more of the - outstanding shares, or (iii) beneficial ownership of such entity. - - "You" (or "Your") shall mean an individual or Legal Entity - exercising permissions granted by this License. - - "Source" form shall mean the preferred form for making modifications, - including but not limited to software source code, documentation - source, and configuration files. - - "Object" form shall mean any form resulting from mechanical - transformation or translation of a Source form, including but - not limited to compiled object code, generated documentation, - and conversions to other media types. - - "Work" shall mean the work of authorship, whether in Source or - Object form, made available under the License, as indicated by a - copyright notice that is included in or attached to the work - (an example is provided in the Appendix below). - - "Derivative Works" shall mean any work, whether in Source or Object - form, that is based on (or derived from) the Work and for which the - editorial revisions, annotations, elaborations, or other modifications - represent, as a whole, an original work of authorship. For the purposes - of this License, Derivative Works shall not include works that remain - separable from, or merely link (or bind by name) to the interfaces of, - the Work and Derivative Works thereof. - - "Contribution" shall mean any work of authorship, including - the original version of the Work and any modifications or additions - to that Work or Derivative Works thereof, that is intentionally - submitted to Licensor for inclusion in the Work by the copyright owner - or by an individual or Legal Entity authorized to submit on behalf of - the copyright owner. For the purposes of this definition, "submitted" - means any form of electronic, verbal, or written communication sent - to the Licensor or its representatives, including but not limited to - communication on electronic mailing lists, source code control systems, - and issue tracking systems that are managed by, or on behalf of, the - Licensor for the purpose of discussing and improving the Work, but - excluding communication that is conspicuously marked or otherwise - designated in writing by the copyright owner as "Not a Contribution." - - "Contributor" shall mean Licensor and any individual or Legal Entity - on behalf of whom a Contribution has been received by Licensor and - subsequently incorporated within the Work. - - 2. Grant of Copyright License. Subject to the terms and conditions of - this License, each Contributor hereby grants to You a perpetual, - worldwide, non-exclusive, no-charge, royalty-free, irrevocable - copyright license to reproduce, prepare Derivative Works of, - publicly display, publicly perform, sublicense, and distribute the - Work and such Derivative Works in Source or Object form. - - 3. Grant of Patent License. Subject to the terms and conditions of - this License, each Contributor hereby grants to You a perpetual, - worldwide, non-exclusive, no-charge, royalty-free, irrevocable - (except as stated in this section) patent license to make, have made, - use, offer to sell, sell, import, and otherwise transfer the Work, - where such license applies only to those patent claims licensable - by such Contributor that are necessarily infringed by their - Contribution(s) alone or by combination of their Contribution(s) - with the Work to which such Contribution(s) was submitted. If You - institute patent litigation against any entity (including a - cross-claim or counterclaim in a lawsuit) alleging that the Work - or a Contribution incorporated within the Work constitutes direct - or contributory patent infringement, then any patent licenses - granted to You under this License for that Work shall terminate - as of the date such litigation is filed. - - 4. Redistribution. You may reproduce and distribute copies of the - Work or Derivative Works thereof in any medium, with or without - modifications, and in Source or Object form, provided that You - meet the following conditions: - - (a) You must give any other recipients of the Work or - Derivative Works a copy of this License; and - - (b) You must cause any modified files to carry prominent notices - stating that You changed the files; and - - (c) You must retain, in the Source form of any Derivative Works - that You distribute, all copyright, patent, trademark, and - attribution notices from the Source form of the Work, - excluding those notices that do not pertain to any part of - the Derivative Works; and - - (d) If the Work includes a "NOTICE" text file as part of its - distribution, then any Derivative Works that You distribute must - include a readable copy of the attribution notices contained - within such NOTICE file, excluding those notices that do not - pertain to any part of the Derivative Works, in at least one - of the following places: within a NOTICE text file distributed - as part of the Derivative Works; within the Source form or - documentation, if provided along with the Derivative Works; or, - within a display generated by the Derivative Works, if and - wherever such third-party notices normally appear. The contents - of the NOTICE file are for informational purposes only and - do not modify the License. You may add Your own attribution - notices within Derivative Works that You distribute, alongside - or as an addendum to the NOTICE text from the Work, provided - that such additional attribution notices cannot be construed - as modifying the License. - - You may add Your own copyright statement to Your modifications and - may provide additional or different license terms and conditions - for use, reproduction, or distribution of Your modifications, or - for any such Derivative Works as a whole, provided Your use, - reproduction, and distribution of the Work otherwise complies with - the conditions stated in this License. - - 5. Submission of Contributions. Unless You explicitly state otherwise, - any Contribution intentionally submitted for inclusion in the Work - by You to the Licensor shall be under the terms and conditions of - this License, without any additional terms or conditions. - Notwithstanding the above, nothing herein shall supersede or modify - the terms of any separate license agreement you may have executed - with Licensor regarding such Contributions. - - 6. Trademarks. This License does not grant permission to use the trade - names, trademarks, service marks, or product names of the Licensor, - except as required for reasonable and customary use in describing the - origin of the Work and reproducing the content of the NOTICE file. - - 7. Disclaimer of Warranty. Unless required by applicable law or - agreed to in writing, Licensor provides the Work (and each - Contributor provides its Contributions) on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or - implied, including, without limitation, any warranties or conditions - of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A - PARTICULAR PURPOSE. You are solely responsible for determining the - appropriateness of using or redistributing the Work and assume any - risks associated with Your exercise of permissions under this License. - - 8. Limitation of Liability. In no event and under no legal theory, - whether in tort (including negligence), contract, or otherwise, - unless required by applicable law (such as deliberate and grossly - negligent acts) or agreed to in writing, shall any Contributor be - liable to You for damages, including any direct, indirect, special, - incidental, or consequential damages of any character arising as a - result of this License or out of the use or inability to use the - Work (including but not limited to damages for loss of goodwill, - work stoppage, computer failure or malfunction, or any and all - other commercial damages or losses), even if such Contributor - has been advised of the possibility of such damages. - - 9. Accepting Warranty or Additional Liability. While redistributing - the Work or Derivative Works thereof, You may choose to offer, - and charge a fee for, acceptance of support, warranty, indemnity, - or other liability obligations and/or rights consistent with this - License. However, in accepting such obligations, You may act only - on Your own behalf and on Your sole responsibility, not on behalf - of any other Contributor, and only if You agree to indemnify, - defend, and hold each Contributor harmless for any liability - incurred by, or claims asserted against, such Contributor by reason - of your accepting any such warranty or additional liability. - - END OF TERMS AND CONDITIONS - - APPENDIX: How to apply the Apache License to your work. - - To apply the Apache License to your work, attach the following - boilerplate notice, with the fields enclosed by brackets "[]" - replaced with your own identifying information. (Don't include - the brackets!) The text should be enclosed in the appropriate - comment syntax for the file format. We also recommend that a - file or class name and description of purpose be included on the - same "printed page" as the copyright notice for easier - identification within third-party archives. - - Copyright [RTAkland] [name of copyright owner] - - Licensed under the Apache License, Version 2.0 (the "License"); - you may not use this file except in compliance with the License. - You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - - Unless required by applicable law or agreed to in writing, software - distributed under the License is distributed on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - See the License for the specific language governing permissions and + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright [RTAkland] [name of copyright owner] + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and limitations under the License. \ No newline at end of file diff --git a/README.md b/README.md index 0cb2e10..d8f5089 100644 --- a/README.md +++ b/README.md @@ -1,30 +1,31 @@ -

- - PythonVersion - LICENSE - FlaskVersion - -

- -## Python 版访问次数计数器使用了flask 作为服务端接收请求 -* [文档](https://request-counter-docs.vercel.app/#/) -### 开源 -- 本项目以[Apache-2.0](./LICENSE)许可开源, 即: - - 你可以直接使用该项目提供的功能, 无需任何授权 - - 你可以在**注明来源版权信息**的情况下对源代码进行任意分发和修改以及衍生 - -## 部署 -> 由于对`vercel`不熟悉, vercel的配置文件搞不明白所以暂时没有vercel的配置文件, 我也试了很多方法去部署但是要么是500要么是400 - -## 调用须知 -- API支持`GET` 和 `POST` 方法请求 -- 最大可以计数`10`位数, 超过则重置 -- 可以自定义显示位数默认`7`位数最大`10`位 - - -# 一些信息 -- 使用了Python3.6 的标准库`Sqlite3`进行数据库操作 - - - - +

+ + PythonVersion + LICENSE + FlaskVersion + +

+ +## Python 版访问次数计数器使用了flask 作为服务端接收请求 +* [文档](https://request-counter-docs.vercel.app/#/) +### 开源 +- 本项目以[Apache-2.0](./LICENSE)许可开源, 即: + - 你可以直接使用该项目提供的功能, 无需任何授权 + - 你可以在**注明来源版权信息**的情况下对源代码进行任意分发和修改以及衍生 + +## 部署 +> 由于对`vercel`不熟悉, vercel的配置文件搞不明白所以暂时没有vercel的配置文件, 我也试了很多方法去部署但是要么是500要么是400 + +## 调用须知 +- API支持`GET` 和 `POST` 方法请求 +- 最大可以计数`10`位数, 超过则重置 +- 可以自定义显示位数默认`7`位数最大`10`位 +- 可以自己选择更多的主题只需要加上请求参数: `theme`再加上想要的主题即可 + + +# 一些信息 +- 使用了Python3.6 的标准库`Sqlite3`进行数据库操作 + + + + diff --git a/bin/assets/theme.db b/bin/assets/theme.db index 0a58c31..eedd1f5 100644 Binary files a/bin/assets/theme.db and b/bin/assets/theme.db differ diff --git a/bin/assets/themes/5naf/0.gif b/bin/assets/themes/5naf/0.gif new file mode 100644 index 0000000..7fadaa1 Binary files /dev/null and b/bin/assets/themes/5naf/0.gif differ diff --git a/bin/assets/themes/5naf/1.gif b/bin/assets/themes/5naf/1.gif new file mode 100644 index 0000000..2069fdf Binary files /dev/null and b/bin/assets/themes/5naf/1.gif differ diff --git a/bin/assets/themes/5naf/2.gif b/bin/assets/themes/5naf/2.gif new file mode 100644 index 0000000..3328967 Binary files /dev/null and b/bin/assets/themes/5naf/2.gif differ diff --git a/bin/assets/themes/5naf/3.gif b/bin/assets/themes/5naf/3.gif new file mode 100644 index 0000000..01af2a3 Binary files /dev/null and b/bin/assets/themes/5naf/3.gif differ diff --git a/bin/assets/themes/5naf/4.gif b/bin/assets/themes/5naf/4.gif new file mode 100644 index 0000000..f5294ab Binary files /dev/null and b/bin/assets/themes/5naf/4.gif differ diff --git a/bin/assets/themes/5naf/5.gif b/bin/assets/themes/5naf/5.gif new file mode 100644 index 0000000..975007e Binary files /dev/null and b/bin/assets/themes/5naf/5.gif differ diff --git a/bin/assets/themes/5naf/6.gif b/bin/assets/themes/5naf/6.gif new file mode 100644 index 0000000..08e6ed0 Binary files /dev/null and b/bin/assets/themes/5naf/6.gif differ diff --git a/bin/assets/themes/5naf/7.gif b/bin/assets/themes/5naf/7.gif new file mode 100644 index 0000000..c4a8f47 Binary files /dev/null and b/bin/assets/themes/5naf/7.gif differ diff --git a/bin/assets/themes/5naf/8.gif b/bin/assets/themes/5naf/8.gif new file mode 100644 index 0000000..2037808 Binary files /dev/null and b/bin/assets/themes/5naf/8.gif differ diff --git a/bin/assets/themes/5naf/9.gif b/bin/assets/themes/5naf/9.gif new file mode 100644 index 0000000..3363b32 Binary files /dev/null and b/bin/assets/themes/5naf/9.gif differ diff --git a/bin/assets/themes/allgirl/0.gif b/bin/assets/themes/allgirl/0.gif new file mode 100644 index 0000000..83f6dc2 Binary files /dev/null and b/bin/assets/themes/allgirl/0.gif differ diff --git a/bin/assets/themes/allgirl/1.gif b/bin/assets/themes/allgirl/1.gif new file mode 100644 index 0000000..fccdde2 Binary files /dev/null and b/bin/assets/themes/allgirl/1.gif differ diff --git a/bin/assets/themes/allgirl/2.gif b/bin/assets/themes/allgirl/2.gif new file mode 100644 index 0000000..7e858c2 Binary files /dev/null and b/bin/assets/themes/allgirl/2.gif differ diff --git a/bin/assets/themes/allgirl/3.gif b/bin/assets/themes/allgirl/3.gif new file mode 100644 index 0000000..dab7b1a Binary files /dev/null and b/bin/assets/themes/allgirl/3.gif differ diff --git a/bin/assets/themes/allgirl/4.gif b/bin/assets/themes/allgirl/4.gif new file mode 100644 index 0000000..af98b23 Binary files /dev/null and b/bin/assets/themes/allgirl/4.gif differ diff --git a/bin/assets/themes/allgirl/5.gif b/bin/assets/themes/allgirl/5.gif new file mode 100644 index 0000000..34b6f5b Binary files /dev/null and b/bin/assets/themes/allgirl/5.gif differ diff --git a/bin/assets/themes/allgirl/6.gif b/bin/assets/themes/allgirl/6.gif new file mode 100644 index 0000000..0edb17b Binary files /dev/null and b/bin/assets/themes/allgirl/6.gif differ diff --git a/bin/assets/themes/allgirl/7.gif b/bin/assets/themes/allgirl/7.gif new file mode 100644 index 0000000..8b3d3f6 Binary files /dev/null and b/bin/assets/themes/allgirl/7.gif differ diff --git a/bin/assets/themes/allgirl/8.gif b/bin/assets/themes/allgirl/8.gif new file mode 100644 index 0000000..3ff1008 Binary files /dev/null and b/bin/assets/themes/allgirl/8.gif differ diff --git a/bin/assets/themes/allgirl/9.gif b/bin/assets/themes/allgirl/9.gif new file mode 100644 index 0000000..d2f5145 Binary files /dev/null and b/bin/assets/themes/allgirl/9.gif differ diff --git a/bin/assets/themes/azureblade/0.gif b/bin/assets/themes/azureblade/0.gif new file mode 100644 index 0000000..f5fea7e Binary files /dev/null and b/bin/assets/themes/azureblade/0.gif differ diff --git a/bin/assets/themes/azureblade/1.gif b/bin/assets/themes/azureblade/1.gif new file mode 100644 index 0000000..472331f Binary files /dev/null and b/bin/assets/themes/azureblade/1.gif differ diff --git a/bin/assets/themes/azureblade/2.gif b/bin/assets/themes/azureblade/2.gif new file mode 100644 index 0000000..64a6661 Binary files /dev/null and b/bin/assets/themes/azureblade/2.gif differ diff --git a/bin/assets/themes/azureblade/3.gif b/bin/assets/themes/azureblade/3.gif new file mode 100644 index 0000000..c007291 Binary files /dev/null and b/bin/assets/themes/azureblade/3.gif differ diff --git a/bin/assets/themes/moe_theme/gelbooru/4.gif b/bin/assets/themes/azureblade/4.gif similarity index 100% rename from bin/assets/themes/moe_theme/gelbooru/4.gif rename to bin/assets/themes/azureblade/4.gif diff --git a/bin/assets/themes/azureblade/5.gif b/bin/assets/themes/azureblade/5.gif new file mode 100644 index 0000000..c756955 Binary files /dev/null and b/bin/assets/themes/azureblade/5.gif differ diff --git a/bin/assets/themes/azureblade/6.gif b/bin/assets/themes/azureblade/6.gif new file mode 100644 index 0000000..625a208 Binary files /dev/null and b/bin/assets/themes/azureblade/6.gif differ diff --git a/bin/assets/themes/azureblade/7.gif b/bin/assets/themes/azureblade/7.gif new file mode 100644 index 0000000..6bc53bd Binary files /dev/null and b/bin/assets/themes/azureblade/7.gif differ diff --git a/bin/assets/themes/azureblade/8.gif b/bin/assets/themes/azureblade/8.gif new file mode 100644 index 0000000..2dd42ae Binary files /dev/null and b/bin/assets/themes/azureblade/8.gif differ diff --git a/bin/assets/themes/azureblade/9.gif b/bin/assets/themes/azureblade/9.gif new file mode 100644 index 0000000..2fb57c2 Binary files /dev/null and b/bin/assets/themes/azureblade/9.gif differ diff --git a/bin/assets/themes/blacked/0.gif b/bin/assets/themes/blacked/0.gif new file mode 100644 index 0000000..15d5a8a Binary files /dev/null and b/bin/assets/themes/blacked/0.gif differ diff --git a/bin/assets/themes/blacked/1.gif b/bin/assets/themes/blacked/1.gif new file mode 100644 index 0000000..0f3f232 Binary files /dev/null and b/bin/assets/themes/blacked/1.gif differ diff --git a/bin/assets/themes/blacked/2.gif b/bin/assets/themes/blacked/2.gif new file mode 100644 index 0000000..7abc8cc Binary files /dev/null and b/bin/assets/themes/blacked/2.gif differ diff --git a/bin/assets/themes/blacked/3.gif b/bin/assets/themes/blacked/3.gif new file mode 100644 index 0000000..940ab7d Binary files /dev/null and b/bin/assets/themes/blacked/3.gif differ diff --git a/bin/assets/themes/blacked/4.gif b/bin/assets/themes/blacked/4.gif new file mode 100644 index 0000000..b513ba2 Binary files /dev/null and b/bin/assets/themes/blacked/4.gif differ diff --git a/bin/assets/themes/blacked/5.gif b/bin/assets/themes/blacked/5.gif new file mode 100644 index 0000000..1525d18 Binary files /dev/null and b/bin/assets/themes/blacked/5.gif differ diff --git a/bin/assets/themes/blacked/6.gif b/bin/assets/themes/blacked/6.gif new file mode 100644 index 0000000..9ee5e57 Binary files /dev/null and b/bin/assets/themes/blacked/6.gif differ diff --git a/bin/assets/themes/blacked/7.gif b/bin/assets/themes/blacked/7.gif new file mode 100644 index 0000000..1459791 Binary files /dev/null and b/bin/assets/themes/blacked/7.gif differ diff --git a/bin/assets/themes/blacked/8.gif b/bin/assets/themes/blacked/8.gif new file mode 100644 index 0000000..498c7cf Binary files /dev/null and b/bin/assets/themes/blacked/8.gif differ diff --git a/bin/assets/themes/blacked/9.gif b/bin/assets/themes/blacked/9.gif new file mode 100644 index 0000000..663a691 Binary files /dev/null and b/bin/assets/themes/blacked/9.gif differ diff --git a/bin/assets/themes/celeb/0.gif b/bin/assets/themes/celeb/0.gif new file mode 100644 index 0000000..b089e64 Binary files /dev/null and b/bin/assets/themes/celeb/0.gif differ diff --git a/bin/assets/themes/celeb/1.gif b/bin/assets/themes/celeb/1.gif new file mode 100644 index 0000000..af2dd7a Binary files /dev/null and b/bin/assets/themes/celeb/1.gif differ diff --git a/bin/assets/themes/celeb/2.gif b/bin/assets/themes/celeb/2.gif new file mode 100644 index 0000000..c5b6942 Binary files /dev/null and b/bin/assets/themes/celeb/2.gif differ diff --git a/bin/assets/themes/celeb/3.gif b/bin/assets/themes/celeb/3.gif new file mode 100644 index 0000000..e507929 Binary files /dev/null and b/bin/assets/themes/celeb/3.gif differ diff --git a/bin/assets/themes/celeb/4.gif b/bin/assets/themes/celeb/4.gif new file mode 100644 index 0000000..e690b88 Binary files /dev/null and b/bin/assets/themes/celeb/4.gif differ diff --git a/bin/assets/themes/celeb/5.gif b/bin/assets/themes/celeb/5.gif new file mode 100644 index 0000000..89178a3 Binary files /dev/null and b/bin/assets/themes/celeb/5.gif differ diff --git a/bin/assets/themes/celeb/6.gif b/bin/assets/themes/celeb/6.gif new file mode 100644 index 0000000..c42d2fc Binary files /dev/null and b/bin/assets/themes/celeb/6.gif differ diff --git a/bin/assets/themes/celeb/7.gif b/bin/assets/themes/celeb/7.gif new file mode 100644 index 0000000..f281208 Binary files /dev/null and b/bin/assets/themes/celeb/7.gif differ diff --git a/bin/assets/themes/celeb/8.gif b/bin/assets/themes/celeb/8.gif new file mode 100644 index 0000000..1f2c6d2 Binary files /dev/null and b/bin/assets/themes/celeb/8.gif differ diff --git a/bin/assets/themes/celeb/9.gif b/bin/assets/themes/celeb/9.gif new file mode 100644 index 0000000..107186b Binary files /dev/null and b/bin/assets/themes/celeb/9.gif differ diff --git a/bin/assets/themes/channel-tan/0.gif b/bin/assets/themes/channel-tan/0.gif new file mode 100644 index 0000000..7c4acb8 Binary files /dev/null and b/bin/assets/themes/channel-tan/0.gif differ diff --git a/bin/assets/themes/channel-tan/1.gif b/bin/assets/themes/channel-tan/1.gif new file mode 100644 index 0000000..b48b8da Binary files /dev/null and b/bin/assets/themes/channel-tan/1.gif differ diff --git a/bin/assets/themes/channel-tan/2.gif b/bin/assets/themes/channel-tan/2.gif new file mode 100644 index 0000000..b471946 Binary files /dev/null and b/bin/assets/themes/channel-tan/2.gif differ diff --git a/bin/assets/themes/channel-tan/3.gif b/bin/assets/themes/channel-tan/3.gif new file mode 100644 index 0000000..1f8ef00 Binary files /dev/null and b/bin/assets/themes/channel-tan/3.gif differ diff --git a/bin/assets/themes/channel-tan/4.gif b/bin/assets/themes/channel-tan/4.gif new file mode 100644 index 0000000..44a9c96 Binary files /dev/null and b/bin/assets/themes/channel-tan/4.gif differ diff --git a/bin/assets/themes/channel-tan/5.gif b/bin/assets/themes/channel-tan/5.gif new file mode 100644 index 0000000..8c9d5dc Binary files /dev/null and b/bin/assets/themes/channel-tan/5.gif differ diff --git a/bin/assets/themes/channel-tan/6.gif b/bin/assets/themes/channel-tan/6.gif new file mode 100644 index 0000000..359fd60 Binary files /dev/null and b/bin/assets/themes/channel-tan/6.gif differ diff --git a/bin/assets/themes/channel-tan/7.gif b/bin/assets/themes/channel-tan/7.gif new file mode 100644 index 0000000..ea41dce Binary files /dev/null and b/bin/assets/themes/channel-tan/7.gif differ diff --git a/bin/assets/themes/channel-tan/8.gif b/bin/assets/themes/channel-tan/8.gif new file mode 100644 index 0000000..9e615e2 Binary files /dev/null and b/bin/assets/themes/channel-tan/8.gif differ diff --git a/bin/assets/themes/channel-tan/9.gif b/bin/assets/themes/channel-tan/9.gif new file mode 100644 index 0000000..4b77bbb Binary files /dev/null and b/bin/assets/themes/channel-tan/9.gif differ diff --git a/bin/assets/themes/characterlibrary/0.gif b/bin/assets/themes/characterlibrary/0.gif new file mode 100644 index 0000000..8449d4f Binary files /dev/null and b/bin/assets/themes/characterlibrary/0.gif differ diff --git a/bin/assets/themes/characterlibrary/1.gif b/bin/assets/themes/characterlibrary/1.gif new file mode 100644 index 0000000..475c97c Binary files /dev/null and b/bin/assets/themes/characterlibrary/1.gif differ diff --git a/bin/assets/themes/characterlibrary/2.gif b/bin/assets/themes/characterlibrary/2.gif new file mode 100644 index 0000000..13fbb9e Binary files /dev/null and b/bin/assets/themes/characterlibrary/2.gif differ diff --git a/bin/assets/themes/characterlibrary/3.gif b/bin/assets/themes/characterlibrary/3.gif new file mode 100644 index 0000000..6ccb3bb Binary files /dev/null and b/bin/assets/themes/characterlibrary/3.gif differ diff --git a/bin/assets/themes/characterlibrary/4.gif b/bin/assets/themes/characterlibrary/4.gif new file mode 100644 index 0000000..ef1bb49 Binary files /dev/null and b/bin/assets/themes/characterlibrary/4.gif differ diff --git a/bin/assets/themes/characterlibrary/5.gif b/bin/assets/themes/characterlibrary/5.gif new file mode 100644 index 0000000..c50cbc2 Binary files /dev/null and b/bin/assets/themes/characterlibrary/5.gif differ diff --git a/bin/assets/themes/characterlibrary/6.gif b/bin/assets/themes/characterlibrary/6.gif new file mode 100644 index 0000000..b1d3163 Binary files /dev/null and b/bin/assets/themes/characterlibrary/6.gif differ diff --git a/bin/assets/themes/characterlibrary/7.gif b/bin/assets/themes/characterlibrary/7.gif new file mode 100644 index 0000000..776aeb7 Binary files /dev/null and b/bin/assets/themes/characterlibrary/7.gif differ diff --git a/bin/assets/themes/characterlibrary/8.gif b/bin/assets/themes/characterlibrary/8.gif new file mode 100644 index 0000000..e85b759 Binary files /dev/null and b/bin/assets/themes/characterlibrary/8.gif differ diff --git a/bin/assets/themes/characterlibrary/9.gif b/bin/assets/themes/characterlibrary/9.gif new file mode 100644 index 0000000..df69bab Binary files /dev/null and b/bin/assets/themes/characterlibrary/9.gif differ diff --git a/bin/assets/themes/consoletan/0.gif b/bin/assets/themes/consoletan/0.gif new file mode 100644 index 0000000..f5c511b Binary files /dev/null and b/bin/assets/themes/consoletan/0.gif differ diff --git a/bin/assets/themes/consoletan/1.gif b/bin/assets/themes/consoletan/1.gif new file mode 100644 index 0000000..c078b1b Binary files /dev/null and b/bin/assets/themes/consoletan/1.gif differ diff --git a/bin/assets/themes/consoletan/2.gif b/bin/assets/themes/consoletan/2.gif new file mode 100644 index 0000000..330ef93 Binary files /dev/null and b/bin/assets/themes/consoletan/2.gif differ diff --git a/bin/assets/themes/consoletan/3.gif b/bin/assets/themes/consoletan/3.gif new file mode 100644 index 0000000..5339a61 Binary files /dev/null and b/bin/assets/themes/consoletan/3.gif differ diff --git a/bin/assets/themes/consoletan/4.gif b/bin/assets/themes/consoletan/4.gif new file mode 100644 index 0000000..7217cb8 Binary files /dev/null and b/bin/assets/themes/consoletan/4.gif differ diff --git a/bin/assets/themes/consoletan/5.gif b/bin/assets/themes/consoletan/5.gif new file mode 100644 index 0000000..34d88f2 Binary files /dev/null and b/bin/assets/themes/consoletan/5.gif differ diff --git a/bin/assets/themes/consoletan/6.gif b/bin/assets/themes/consoletan/6.gif new file mode 100644 index 0000000..0c1d12a Binary files /dev/null and b/bin/assets/themes/consoletan/6.gif differ diff --git a/bin/assets/themes/consoletan/7.gif b/bin/assets/themes/consoletan/7.gif new file mode 100644 index 0000000..734231a Binary files /dev/null and b/bin/assets/themes/consoletan/7.gif differ diff --git a/bin/assets/themes/consoletan/8.gif b/bin/assets/themes/consoletan/8.gif new file mode 100644 index 0000000..5cc64e3 Binary files /dev/null and b/bin/assets/themes/consoletan/8.gif differ diff --git a/bin/assets/themes/consoletan/9.gif b/bin/assets/themes/consoletan/9.gif new file mode 100644 index 0000000..bab3eea Binary files /dev/null and b/bin/assets/themes/consoletan/9.gif differ diff --git a/bin/assets/themes/crewbooru/0.gif b/bin/assets/themes/crewbooru/0.gif new file mode 100644 index 0000000..ee5396b Binary files /dev/null and b/bin/assets/themes/crewbooru/0.gif differ diff --git a/bin/assets/themes/crewbooru/1.gif b/bin/assets/themes/crewbooru/1.gif new file mode 100644 index 0000000..de34656 Binary files /dev/null and b/bin/assets/themes/crewbooru/1.gif differ diff --git a/bin/assets/themes/crewbooru/2.gif b/bin/assets/themes/crewbooru/2.gif new file mode 100644 index 0000000..8b4e9b4 Binary files /dev/null and b/bin/assets/themes/crewbooru/2.gif differ diff --git a/bin/assets/themes/crewbooru/3.gif b/bin/assets/themes/crewbooru/3.gif new file mode 100644 index 0000000..3849aaf Binary files /dev/null and b/bin/assets/themes/crewbooru/3.gif differ diff --git a/bin/assets/themes/crewbooru/4.gif b/bin/assets/themes/crewbooru/4.gif new file mode 100644 index 0000000..c188e8a Binary files /dev/null and b/bin/assets/themes/crewbooru/4.gif differ diff --git a/bin/assets/themes/crewbooru/5.gif b/bin/assets/themes/crewbooru/5.gif new file mode 100644 index 0000000..93a2f55 Binary files /dev/null and b/bin/assets/themes/crewbooru/5.gif differ diff --git a/bin/assets/themes/crewbooru/6.gif b/bin/assets/themes/crewbooru/6.gif new file mode 100644 index 0000000..31b84fd Binary files /dev/null and b/bin/assets/themes/crewbooru/6.gif differ diff --git a/bin/assets/themes/crewbooru/7.gif b/bin/assets/themes/crewbooru/7.gif new file mode 100644 index 0000000..5c0d411 Binary files /dev/null and b/bin/assets/themes/crewbooru/7.gif differ diff --git a/bin/assets/themes/crewbooru/8.gif b/bin/assets/themes/crewbooru/8.gif new file mode 100644 index 0000000..f3860bd Binary files /dev/null and b/bin/assets/themes/crewbooru/8.gif differ diff --git a/bin/assets/themes/crewbooru/9.gif b/bin/assets/themes/crewbooru/9.gif new file mode 100644 index 0000000..2414839 Binary files /dev/null and b/bin/assets/themes/crewbooru/9.gif differ diff --git a/bin/assets/themes/cripple/0.gif b/bin/assets/themes/cripple/0.gif new file mode 100644 index 0000000..525b5c3 Binary files /dev/null and b/bin/assets/themes/cripple/0.gif differ diff --git a/bin/assets/themes/cripple/1.gif b/bin/assets/themes/cripple/1.gif new file mode 100644 index 0000000..d048f5f Binary files /dev/null and b/bin/assets/themes/cripple/1.gif differ diff --git a/bin/assets/themes/cripple/2.gif b/bin/assets/themes/cripple/2.gif new file mode 100644 index 0000000..0c4c11f Binary files /dev/null and b/bin/assets/themes/cripple/2.gif differ diff --git a/bin/assets/themes/cripple/3.gif b/bin/assets/themes/cripple/3.gif new file mode 100644 index 0000000..8ca5bc3 Binary files /dev/null and b/bin/assets/themes/cripple/3.gif differ diff --git a/bin/assets/themes/cripple/4.gif b/bin/assets/themes/cripple/4.gif new file mode 100644 index 0000000..63206ef Binary files /dev/null and b/bin/assets/themes/cripple/4.gif differ diff --git a/bin/assets/themes/cripple/5.gif b/bin/assets/themes/cripple/5.gif new file mode 100644 index 0000000..959396e Binary files /dev/null and b/bin/assets/themes/cripple/5.gif differ diff --git a/bin/assets/themes/cripple/6.gif b/bin/assets/themes/cripple/6.gif new file mode 100644 index 0000000..56039c8 Binary files /dev/null and b/bin/assets/themes/cripple/6.gif differ diff --git a/bin/assets/themes/cripple/7.gif b/bin/assets/themes/cripple/7.gif new file mode 100644 index 0000000..5356eb8 Binary files /dev/null and b/bin/assets/themes/cripple/7.gif differ diff --git a/bin/assets/themes/cripple/8.gif b/bin/assets/themes/cripple/8.gif new file mode 100644 index 0000000..d293523 Binary files /dev/null and b/bin/assets/themes/cripple/8.gif differ diff --git a/bin/assets/themes/cripple/9.gif b/bin/assets/themes/cripple/9.gif new file mode 100644 index 0000000..6331407 Binary files /dev/null and b/bin/assets/themes/cripple/9.gif differ diff --git a/bin/assets/themes/erpg/0.gif b/bin/assets/themes/erpg/0.gif new file mode 100644 index 0000000..f0a996d Binary files /dev/null and b/bin/assets/themes/erpg/0.gif differ diff --git a/bin/assets/themes/erpg/1.gif b/bin/assets/themes/erpg/1.gif new file mode 100644 index 0000000..6ec6539 Binary files /dev/null and b/bin/assets/themes/erpg/1.gif differ diff --git a/bin/assets/themes/erpg/2.gif b/bin/assets/themes/erpg/2.gif new file mode 100644 index 0000000..6046b9a Binary files /dev/null and b/bin/assets/themes/erpg/2.gif differ diff --git a/bin/assets/themes/erpg/3.gif b/bin/assets/themes/erpg/3.gif new file mode 100644 index 0000000..432d532 Binary files /dev/null and b/bin/assets/themes/erpg/3.gif differ diff --git a/bin/assets/themes/erpg/4.gif b/bin/assets/themes/erpg/4.gif new file mode 100644 index 0000000..9967743 Binary files /dev/null and b/bin/assets/themes/erpg/4.gif differ diff --git a/bin/assets/themes/erpg/5.gif b/bin/assets/themes/erpg/5.gif new file mode 100644 index 0000000..1eb8a08 Binary files /dev/null and b/bin/assets/themes/erpg/5.gif differ diff --git a/bin/assets/themes/erpg/6.gif b/bin/assets/themes/erpg/6.gif new file mode 100644 index 0000000..5e0bc0b Binary files /dev/null and b/bin/assets/themes/erpg/6.gif differ diff --git a/bin/assets/themes/erpg/7.gif b/bin/assets/themes/erpg/7.gif new file mode 100644 index 0000000..3f4d98c Binary files /dev/null and b/bin/assets/themes/erpg/7.gif differ diff --git a/bin/assets/themes/erpg/8.gif b/bin/assets/themes/erpg/8.gif new file mode 100644 index 0000000..3db2c0c Binary files /dev/null and b/bin/assets/themes/erpg/8.gif differ diff --git a/bin/assets/themes/erpg/9.gif b/bin/assets/themes/erpg/9.gif new file mode 100644 index 0000000..42fb02e Binary files /dev/null and b/bin/assets/themes/erpg/9.gif differ diff --git a/bin/assets/themes/footfetishbooru/0.gif b/bin/assets/themes/footfetishbooru/0.gif new file mode 100644 index 0000000..eb733b3 Binary files /dev/null and b/bin/assets/themes/footfetishbooru/0.gif differ diff --git a/bin/assets/themes/footfetishbooru/1.gif b/bin/assets/themes/footfetishbooru/1.gif new file mode 100644 index 0000000..6ef4acb Binary files /dev/null and b/bin/assets/themes/footfetishbooru/1.gif differ diff --git a/bin/assets/themes/footfetishbooru/2.gif b/bin/assets/themes/footfetishbooru/2.gif new file mode 100644 index 0000000..c4b41c5 Binary files /dev/null and b/bin/assets/themes/footfetishbooru/2.gif differ diff --git a/bin/assets/themes/footfetishbooru/3.gif b/bin/assets/themes/footfetishbooru/3.gif new file mode 100644 index 0000000..78ab7a2 Binary files /dev/null and b/bin/assets/themes/footfetishbooru/3.gif differ diff --git a/bin/assets/themes/footfetishbooru/4.gif b/bin/assets/themes/footfetishbooru/4.gif new file mode 100644 index 0000000..a7bbcbb Binary files /dev/null and b/bin/assets/themes/footfetishbooru/4.gif differ diff --git a/bin/assets/themes/footfetishbooru/5.gif b/bin/assets/themes/footfetishbooru/5.gif new file mode 100644 index 0000000..054ec49 Binary files /dev/null and b/bin/assets/themes/footfetishbooru/5.gif differ diff --git a/bin/assets/themes/moe_theme/gelbooru/6.gif b/bin/assets/themes/footfetishbooru/6.gif similarity index 100% rename from bin/assets/themes/moe_theme/gelbooru/6.gif rename to bin/assets/themes/footfetishbooru/6.gif diff --git a/bin/assets/themes/footfetishbooru/7.gif b/bin/assets/themes/footfetishbooru/7.gif new file mode 100644 index 0000000..c124a1c Binary files /dev/null and b/bin/assets/themes/footfetishbooru/7.gif differ diff --git a/bin/assets/themes/footfetishbooru/8.gif b/bin/assets/themes/footfetishbooru/8.gif new file mode 100644 index 0000000..ce0a4e0 Binary files /dev/null and b/bin/assets/themes/footfetishbooru/8.gif differ diff --git a/bin/assets/themes/footfetishbooru/9.gif b/bin/assets/themes/footfetishbooru/9.gif new file mode 100644 index 0000000..83d7faa Binary files /dev/null and b/bin/assets/themes/footfetishbooru/9.gif differ diff --git a/bin/assets/themes/g/0.gif b/bin/assets/themes/g/0.gif new file mode 100644 index 0000000..916e6ad Binary files /dev/null and b/bin/assets/themes/g/0.gif differ diff --git a/bin/assets/themes/g/1.gif b/bin/assets/themes/g/1.gif new file mode 100644 index 0000000..575761a Binary files /dev/null and b/bin/assets/themes/g/1.gif differ diff --git a/bin/assets/themes/g/2.gif b/bin/assets/themes/g/2.gif new file mode 100644 index 0000000..d8e8c6d Binary files /dev/null and b/bin/assets/themes/g/2.gif differ diff --git a/bin/assets/themes/g/3.gif b/bin/assets/themes/g/3.gif new file mode 100644 index 0000000..4617dda Binary files /dev/null and b/bin/assets/themes/g/3.gif differ diff --git a/bin/assets/themes/g/4.gif b/bin/assets/themes/g/4.gif new file mode 100644 index 0000000..fe2a52f Binary files /dev/null and b/bin/assets/themes/g/4.gif differ diff --git a/bin/assets/themes/g/5.gif b/bin/assets/themes/g/5.gif new file mode 100644 index 0000000..15ac956 Binary files /dev/null and b/bin/assets/themes/g/5.gif differ diff --git a/bin/assets/themes/g/6.gif b/bin/assets/themes/g/6.gif new file mode 100644 index 0000000..f617f5a Binary files /dev/null and b/bin/assets/themes/g/6.gif differ diff --git a/bin/assets/themes/g/7.gif b/bin/assets/themes/g/7.gif new file mode 100644 index 0000000..436c9a5 Binary files /dev/null and b/bin/assets/themes/g/7.gif differ diff --git a/bin/assets/themes/g/8.gif b/bin/assets/themes/g/8.gif new file mode 100644 index 0000000..e57a33a Binary files /dev/null and b/bin/assets/themes/g/8.gif differ diff --git a/bin/assets/themes/g/9.gif b/bin/assets/themes/g/9.gif new file mode 100644 index 0000000..2131010 Binary files /dev/null and b/bin/assets/themes/g/9.gif differ diff --git a/bin/assets/themes/moe_theme/gelbooru-h/0.png b/bin/assets/themes/gelbooru-h/0.png similarity index 100% rename from bin/assets/themes/moe_theme/gelbooru-h/0.png rename to bin/assets/themes/gelbooru-h/0.png diff --git a/bin/assets/themes/moe_theme/gelbooru-h/1.png b/bin/assets/themes/gelbooru-h/1.png similarity index 100% rename from bin/assets/themes/moe_theme/gelbooru-h/1.png rename to bin/assets/themes/gelbooru-h/1.png diff --git a/bin/assets/themes/moe_theme/gelbooru-h/2.png b/bin/assets/themes/gelbooru-h/2.png similarity index 100% rename from bin/assets/themes/moe_theme/gelbooru-h/2.png rename to bin/assets/themes/gelbooru-h/2.png diff --git a/bin/assets/themes/moe_theme/gelbooru-h/3.png b/bin/assets/themes/gelbooru-h/3.png similarity index 100% rename from bin/assets/themes/moe_theme/gelbooru-h/3.png rename to bin/assets/themes/gelbooru-h/3.png diff --git a/bin/assets/themes/moe_theme/gelbooru-h/4.png b/bin/assets/themes/gelbooru-h/4.png similarity index 100% rename from bin/assets/themes/moe_theme/gelbooru-h/4.png rename to bin/assets/themes/gelbooru-h/4.png diff --git a/bin/assets/themes/moe_theme/gelbooru-h/5.png b/bin/assets/themes/gelbooru-h/5.png similarity index 100% rename from bin/assets/themes/moe_theme/gelbooru-h/5.png rename to bin/assets/themes/gelbooru-h/5.png diff --git a/bin/assets/themes/moe_theme/gelbooru-h/6.png b/bin/assets/themes/gelbooru-h/6.png similarity index 100% rename from bin/assets/themes/moe_theme/gelbooru-h/6.png rename to bin/assets/themes/gelbooru-h/6.png diff --git a/bin/assets/themes/moe_theme/gelbooru-h/7.png b/bin/assets/themes/gelbooru-h/7.png similarity index 100% rename from bin/assets/themes/moe_theme/gelbooru-h/7.png rename to bin/assets/themes/gelbooru-h/7.png diff --git a/bin/assets/themes/moe_theme/gelbooru-h/8.png b/bin/assets/themes/gelbooru-h/8.png similarity index 100% rename from bin/assets/themes/moe_theme/gelbooru-h/8.png rename to bin/assets/themes/gelbooru-h/8.png diff --git a/bin/assets/themes/moe_theme/gelbooru-h/9.png b/bin/assets/themes/gelbooru-h/9.png similarity index 100% rename from bin/assets/themes/moe_theme/gelbooru-h/9.png rename to bin/assets/themes/gelbooru-h/9.png diff --git a/bin/assets/themes/moe_theme/gelbooru/0.gif b/bin/assets/themes/gelbooru/0.gif similarity index 100% rename from bin/assets/themes/moe_theme/gelbooru/0.gif rename to bin/assets/themes/gelbooru/0.gif diff --git a/bin/assets/themes/moe_theme/gelbooru/1.gif b/bin/assets/themes/gelbooru/1.gif similarity index 100% rename from bin/assets/themes/moe_theme/gelbooru/1.gif rename to bin/assets/themes/gelbooru/1.gif diff --git a/bin/assets/themes/moe_theme/gelbooru/2.gif b/bin/assets/themes/gelbooru/2.gif similarity index 100% rename from bin/assets/themes/moe_theme/gelbooru/2.gif rename to bin/assets/themes/gelbooru/2.gif diff --git a/bin/assets/themes/moe_theme/gelbooru/3.gif b/bin/assets/themes/gelbooru/3.gif similarity index 100% rename from bin/assets/themes/moe_theme/gelbooru/3.gif rename to bin/assets/themes/gelbooru/3.gif diff --git a/bin/assets/themes/gelbooru/4.gif b/bin/assets/themes/gelbooru/4.gif new file mode 100644 index 0000000..aabf121 Binary files /dev/null and b/bin/assets/themes/gelbooru/4.gif differ diff --git a/bin/assets/themes/moe_theme/gelbooru/5.gif b/bin/assets/themes/gelbooru/5.gif similarity index 100% rename from bin/assets/themes/moe_theme/gelbooru/5.gif rename to bin/assets/themes/gelbooru/5.gif diff --git a/bin/assets/themes/gelbooru/6.gif b/bin/assets/themes/gelbooru/6.gif new file mode 100644 index 0000000..cd316a0 Binary files /dev/null and b/bin/assets/themes/gelbooru/6.gif differ diff --git a/bin/assets/themes/moe_theme/gelbooru/7.gif b/bin/assets/themes/gelbooru/7.gif similarity index 100% rename from bin/assets/themes/moe_theme/gelbooru/7.gif rename to bin/assets/themes/gelbooru/7.gif diff --git a/bin/assets/themes/moe_theme/gelbooru/8.gif b/bin/assets/themes/gelbooru/8.gif similarity index 100% rename from bin/assets/themes/moe_theme/gelbooru/8.gif rename to bin/assets/themes/gelbooru/8.gif diff --git a/bin/assets/themes/moe_theme/gelbooru/9.gif b/bin/assets/themes/gelbooru/9.gif similarity index 100% rename from bin/assets/themes/moe_theme/gelbooru/9.gif rename to bin/assets/themes/gelbooru/9.gif diff --git a/bin/assets/themes/haniho/0.gif b/bin/assets/themes/haniho/0.gif new file mode 100644 index 0000000..143754a Binary files /dev/null and b/bin/assets/themes/haniho/0.gif differ diff --git a/bin/assets/themes/haniho/1.gif b/bin/assets/themes/haniho/1.gif new file mode 100644 index 0000000..32f2126 Binary files /dev/null and b/bin/assets/themes/haniho/1.gif differ diff --git a/bin/assets/themes/haniho/2.gif b/bin/assets/themes/haniho/2.gif new file mode 100644 index 0000000..c69dcb6 Binary files /dev/null and b/bin/assets/themes/haniho/2.gif differ diff --git a/bin/assets/themes/haniho/3.gif b/bin/assets/themes/haniho/3.gif new file mode 100644 index 0000000..55d22ea Binary files /dev/null and b/bin/assets/themes/haniho/3.gif differ diff --git a/bin/assets/themes/haniho/4.gif b/bin/assets/themes/haniho/4.gif new file mode 100644 index 0000000..5a4245e Binary files /dev/null and b/bin/assets/themes/haniho/4.gif differ diff --git a/bin/assets/themes/haniho/5.gif b/bin/assets/themes/haniho/5.gif new file mode 100644 index 0000000..4c750e3 Binary files /dev/null and b/bin/assets/themes/haniho/5.gif differ diff --git a/bin/assets/themes/haniho/6.gif b/bin/assets/themes/haniho/6.gif new file mode 100644 index 0000000..3b64a19 Binary files /dev/null and b/bin/assets/themes/haniho/6.gif differ diff --git a/bin/assets/themes/haniho/7.gif b/bin/assets/themes/haniho/7.gif new file mode 100644 index 0000000..0a542b6 Binary files /dev/null and b/bin/assets/themes/haniho/7.gif differ diff --git a/bin/assets/themes/haniho/8.gif b/bin/assets/themes/haniho/8.gif new file mode 100644 index 0000000..5136185 Binary files /dev/null and b/bin/assets/themes/haniho/8.gif differ diff --git a/bin/assets/themes/haniho/9.gif b/bin/assets/themes/haniho/9.gif new file mode 100644 index 0000000..efdf17a Binary files /dev/null and b/bin/assets/themes/haniho/9.gif differ diff --git a/bin/assets/themes/hgoon/0.gif b/bin/assets/themes/hgoon/0.gif new file mode 100644 index 0000000..2627acc Binary files /dev/null and b/bin/assets/themes/hgoon/0.gif differ diff --git a/bin/assets/themes/hgoon/1.gif b/bin/assets/themes/hgoon/1.gif new file mode 100644 index 0000000..98f49df Binary files /dev/null and b/bin/assets/themes/hgoon/1.gif differ diff --git a/bin/assets/themes/hgoon/2.gif b/bin/assets/themes/hgoon/2.gif new file mode 100644 index 0000000..07169cd Binary files /dev/null and b/bin/assets/themes/hgoon/2.gif differ diff --git a/bin/assets/themes/hgoon/3.gif b/bin/assets/themes/hgoon/3.gif new file mode 100644 index 0000000..bdaed34 Binary files /dev/null and b/bin/assets/themes/hgoon/3.gif differ diff --git a/bin/assets/themes/hgoon/4.gif b/bin/assets/themes/hgoon/4.gif new file mode 100644 index 0000000..8909143 Binary files /dev/null and b/bin/assets/themes/hgoon/4.gif differ diff --git a/bin/assets/themes/hgoon/5.gif b/bin/assets/themes/hgoon/5.gif new file mode 100644 index 0000000..2e9f844 Binary files /dev/null and b/bin/assets/themes/hgoon/5.gif differ diff --git a/bin/assets/themes/hgoon/6.gif b/bin/assets/themes/hgoon/6.gif new file mode 100644 index 0000000..a10b952 Binary files /dev/null and b/bin/assets/themes/hgoon/6.gif differ diff --git a/bin/assets/themes/hgoon/7.gif b/bin/assets/themes/hgoon/7.gif new file mode 100644 index 0000000..c2bd9e1 Binary files /dev/null and b/bin/assets/themes/hgoon/7.gif differ diff --git a/bin/assets/themes/hgoon/8.gif b/bin/assets/themes/hgoon/8.gif new file mode 100644 index 0000000..e7716a5 Binary files /dev/null and b/bin/assets/themes/hgoon/8.gif differ diff --git a/bin/assets/themes/hgoon/9.gif b/bin/assets/themes/hgoon/9.gif new file mode 100644 index 0000000..5e848d5 Binary files /dev/null and b/bin/assets/themes/hgoon/9.gif differ diff --git a/bin/assets/themes/hypnohub/0.gif b/bin/assets/themes/hypnohub/0.gif new file mode 100644 index 0000000..99d83c0 --- /dev/null +++ b/bin/assets/themes/hypnohub/0.gif @@ -0,0 +1,7 @@ + +404 Not Found + +

404 Not Found

+
nginx
+ + diff --git a/bin/assets/themes/hypnohub/1.gif b/bin/assets/themes/hypnohub/1.gif new file mode 100644 index 0000000..99d83c0 --- /dev/null +++ b/bin/assets/themes/hypnohub/1.gif @@ -0,0 +1,7 @@ + +404 Not Found + +

404 Not Found

+
nginx
+ + diff --git a/bin/assets/themes/hypnohub/2.gif b/bin/assets/themes/hypnohub/2.gif new file mode 100644 index 0000000..99d83c0 --- /dev/null +++ b/bin/assets/themes/hypnohub/2.gif @@ -0,0 +1,7 @@ + +404 Not Found + +

404 Not Found

+
nginx
+ + diff --git a/bin/assets/themes/hypnohub/3.gif b/bin/assets/themes/hypnohub/3.gif new file mode 100644 index 0000000..99d83c0 --- /dev/null +++ b/bin/assets/themes/hypnohub/3.gif @@ -0,0 +1,7 @@ + +404 Not Found + +

404 Not Found

+
nginx
+ + diff --git a/bin/assets/themes/hypnohub/4.gif b/bin/assets/themes/hypnohub/4.gif new file mode 100644 index 0000000..99d83c0 --- /dev/null +++ b/bin/assets/themes/hypnohub/4.gif @@ -0,0 +1,7 @@ + +404 Not Found + +

404 Not Found

+
nginx
+ + diff --git a/bin/assets/themes/hypnohub/5.gif b/bin/assets/themes/hypnohub/5.gif new file mode 100644 index 0000000..99d83c0 --- /dev/null +++ b/bin/assets/themes/hypnohub/5.gif @@ -0,0 +1,7 @@ + +404 Not Found + +

404 Not Found

+
nginx
+ + diff --git a/bin/assets/themes/hypnohub/6.gif b/bin/assets/themes/hypnohub/6.gif new file mode 100644 index 0000000..99d83c0 --- /dev/null +++ b/bin/assets/themes/hypnohub/6.gif @@ -0,0 +1,7 @@ + +404 Not Found + +

404 Not Found

+
nginx
+ + diff --git a/bin/assets/themes/hypnohub/7.gif b/bin/assets/themes/hypnohub/7.gif new file mode 100644 index 0000000..99d83c0 --- /dev/null +++ b/bin/assets/themes/hypnohub/7.gif @@ -0,0 +1,7 @@ + +404 Not Found + +

404 Not Found

+
nginx
+ + diff --git a/bin/assets/themes/hypnohub/8.gif b/bin/assets/themes/hypnohub/8.gif new file mode 100644 index 0000000..99d83c0 --- /dev/null +++ b/bin/assets/themes/hypnohub/8.gif @@ -0,0 +1,7 @@ + +404 Not Found + +

404 Not Found

+
nginx
+ + diff --git a/bin/assets/themes/hypnohub/9.gif b/bin/assets/themes/hypnohub/9.gif new file mode 100644 index 0000000..99d83c0 --- /dev/null +++ b/bin/assets/themes/hypnohub/9.gif @@ -0,0 +1,7 @@ + +404 Not Found + +

404 Not Found

+
nginx
+ + diff --git a/bin/assets/themes/indiegame/0.gif b/bin/assets/themes/indiegame/0.gif new file mode 100644 index 0000000..7dd226a Binary files /dev/null and b/bin/assets/themes/indiegame/0.gif differ diff --git a/bin/assets/themes/indiegame/1.gif b/bin/assets/themes/indiegame/1.gif new file mode 100644 index 0000000..fb738f7 Binary files /dev/null and b/bin/assets/themes/indiegame/1.gif differ diff --git a/bin/assets/themes/indiegame/2.gif b/bin/assets/themes/indiegame/2.gif new file mode 100644 index 0000000..6529a20 Binary files /dev/null and b/bin/assets/themes/indiegame/2.gif differ diff --git a/bin/assets/themes/indiegame/3.gif b/bin/assets/themes/indiegame/3.gif new file mode 100644 index 0000000..9287f0d Binary files /dev/null and b/bin/assets/themes/indiegame/3.gif differ diff --git a/bin/assets/themes/indiegame/4.gif b/bin/assets/themes/indiegame/4.gif new file mode 100644 index 0000000..2d32b12 Binary files /dev/null and b/bin/assets/themes/indiegame/4.gif differ diff --git a/bin/assets/themes/indiegame/5.gif b/bin/assets/themes/indiegame/5.gif new file mode 100644 index 0000000..5789187 Binary files /dev/null and b/bin/assets/themes/indiegame/5.gif differ diff --git a/bin/assets/themes/indiegame/6.gif b/bin/assets/themes/indiegame/6.gif new file mode 100644 index 0000000..5945698 Binary files /dev/null and b/bin/assets/themes/indiegame/6.gif differ diff --git a/bin/assets/themes/indiegame/7.gif b/bin/assets/themes/indiegame/7.gif new file mode 100644 index 0000000..c3a3861 Binary files /dev/null and b/bin/assets/themes/indiegame/7.gif differ diff --git a/bin/assets/themes/indiegame/8.gif b/bin/assets/themes/indiegame/8.gif new file mode 100644 index 0000000..5af7329 Binary files /dev/null and b/bin/assets/themes/indiegame/8.gif differ diff --git a/bin/assets/themes/indiegame/9.gif b/bin/assets/themes/indiegame/9.gif new file mode 100644 index 0000000..3a2ebb2 Binary files /dev/null and b/bin/assets/themes/indiegame/9.gif differ diff --git a/bin/assets/themes/insert_db.py b/bin/assets/themes/insert_db.py index 0ded55b..6f3583c 100644 --- a/bin/assets/themes/insert_db.py +++ b/bin/assets/themes/insert_db.py @@ -1,6 +1,39 @@ -#!/usr/bin/env python3 -# -- coding:utf-8 -- -# @Author: markushammered@gmail.com -# @Development Tool: PyCharm -# @Create Time: 2022/2/8 -# @File Name: insert_db.py \ No newline at end of file +#!/usr/bin/env python3 +# -- coding:utf-8 -- +# @Author: markushammered@gmail.com +# @Development Tool: PyCharm +# @Create Time: 2022/2/8 +# @File Name: insert_db.py + + +import os +import base64 +from PIL import Image +import sqlite3 + +conn = sqlite3.connect('../theme.db') +cursor = conn.cursor() + + +def get_size(file): + img = Image.open(file) + return img.size + + +dir_name = './rfck' +lst = os.listdir(dir_name) +c = 0 +for i in lst: + w, h = get_size(f'{dir_name}/{i}') + type_ = i.split('.')[-1] + if type_ == 'png': + type_ = 'jepg' + else: + type_ = 'gif' + with open(f'./{dir_name}/{i}', 'rb') as f: + base64_data = base64.b64encode(f.read()) + base64_code = f'data:image/{type_};base64,' + base64_data.decode('utf-8') + cursor.execute('insert into rfck values(?, ?, ?, ?)', (c, base64_code, w, h)) + conn.commit() + c += 1 + diff --git a/bin/assets/themes/kanayabooru/0.gif b/bin/assets/themes/kanayabooru/0.gif new file mode 100644 index 0000000..285f2c1 Binary files /dev/null and b/bin/assets/themes/kanayabooru/0.gif differ diff --git a/bin/assets/themes/kanayabooru/1.gif b/bin/assets/themes/kanayabooru/1.gif new file mode 100644 index 0000000..3707ce0 Binary files /dev/null and b/bin/assets/themes/kanayabooru/1.gif differ diff --git a/bin/assets/themes/kanayabooru/2.gif b/bin/assets/themes/kanayabooru/2.gif new file mode 100644 index 0000000..1d8b3a6 Binary files /dev/null and b/bin/assets/themes/kanayabooru/2.gif differ diff --git a/bin/assets/themes/kanayabooru/3.gif b/bin/assets/themes/kanayabooru/3.gif new file mode 100644 index 0000000..5f9e798 Binary files /dev/null and b/bin/assets/themes/kanayabooru/3.gif differ diff --git a/bin/assets/themes/kanayabooru/4.gif b/bin/assets/themes/kanayabooru/4.gif new file mode 100644 index 0000000..47c14e1 Binary files /dev/null and b/bin/assets/themes/kanayabooru/4.gif differ diff --git a/bin/assets/themes/kanayabooru/5.gif b/bin/assets/themes/kanayabooru/5.gif new file mode 100644 index 0000000..7faf587 Binary files /dev/null and b/bin/assets/themes/kanayabooru/5.gif differ diff --git a/bin/assets/themes/kanayabooru/6.gif b/bin/assets/themes/kanayabooru/6.gif new file mode 100644 index 0000000..d976e32 Binary files /dev/null and b/bin/assets/themes/kanayabooru/6.gif differ diff --git a/bin/assets/themes/kanayabooru/7.gif b/bin/assets/themes/kanayabooru/7.gif new file mode 100644 index 0000000..4f33425 Binary files /dev/null and b/bin/assets/themes/kanayabooru/7.gif differ diff --git a/bin/assets/themes/kanayabooru/8.gif b/bin/assets/themes/kanayabooru/8.gif new file mode 100644 index 0000000..f56454e Binary files /dev/null and b/bin/assets/themes/kanayabooru/8.gif differ diff --git a/bin/assets/themes/kanayabooru/9.gif b/bin/assets/themes/kanayabooru/9.gif new file mode 100644 index 0000000..2824acb Binary files /dev/null and b/bin/assets/themes/kanayabooru/9.gif differ diff --git a/bin/assets/themes/koe/0.gif b/bin/assets/themes/koe/0.gif new file mode 100644 index 0000000..b4f7357 Binary files /dev/null and b/bin/assets/themes/koe/0.gif differ diff --git a/bin/assets/themes/koe/1.gif b/bin/assets/themes/koe/1.gif new file mode 100644 index 0000000..e0bd727 Binary files /dev/null and b/bin/assets/themes/koe/1.gif differ diff --git a/bin/assets/themes/koe/2.gif b/bin/assets/themes/koe/2.gif new file mode 100644 index 0000000..0480e41 Binary files /dev/null and b/bin/assets/themes/koe/2.gif differ diff --git a/bin/assets/themes/koe/3.gif b/bin/assets/themes/koe/3.gif new file mode 100644 index 0000000..813c4fa Binary files /dev/null and b/bin/assets/themes/koe/3.gif differ diff --git a/bin/assets/themes/koe/4.gif b/bin/assets/themes/koe/4.gif new file mode 100644 index 0000000..69fdfe0 Binary files /dev/null and b/bin/assets/themes/koe/4.gif differ diff --git a/bin/assets/themes/koe/5.gif b/bin/assets/themes/koe/5.gif new file mode 100644 index 0000000..2f7382c Binary files /dev/null and b/bin/assets/themes/koe/5.gif differ diff --git a/bin/assets/themes/koe/6.gif b/bin/assets/themes/koe/6.gif new file mode 100644 index 0000000..d07dd74 Binary files /dev/null and b/bin/assets/themes/koe/6.gif differ diff --git a/bin/assets/themes/koe/7.gif b/bin/assets/themes/koe/7.gif new file mode 100644 index 0000000..3aef98d Binary files /dev/null and b/bin/assets/themes/koe/7.gif differ diff --git a/bin/assets/themes/koe/8.gif b/bin/assets/themes/koe/8.gif new file mode 100644 index 0000000..5fc0447 Binary files /dev/null and b/bin/assets/themes/koe/8.gif differ diff --git a/bin/assets/themes/koe/9.gif b/bin/assets/themes/koe/9.gif new file mode 100644 index 0000000..f0a08c1 Binary files /dev/null and b/bin/assets/themes/koe/9.gif differ diff --git a/bin/assets/themes/lefty/0.gif b/bin/assets/themes/lefty/0.gif new file mode 100644 index 0000000..daf52ca Binary files /dev/null and b/bin/assets/themes/lefty/0.gif differ diff --git a/bin/assets/themes/lefty/1.gif b/bin/assets/themes/lefty/1.gif new file mode 100644 index 0000000..1e66e0f Binary files /dev/null and b/bin/assets/themes/lefty/1.gif differ diff --git a/bin/assets/themes/lefty/2.gif b/bin/assets/themes/lefty/2.gif new file mode 100644 index 0000000..1212db4 Binary files /dev/null and b/bin/assets/themes/lefty/2.gif differ diff --git a/bin/assets/themes/lefty/3.gif b/bin/assets/themes/lefty/3.gif new file mode 100644 index 0000000..4d10c66 Binary files /dev/null and b/bin/assets/themes/lefty/3.gif differ diff --git a/bin/assets/themes/lefty/4.gif b/bin/assets/themes/lefty/4.gif new file mode 100644 index 0000000..7c377ef Binary files /dev/null and b/bin/assets/themes/lefty/4.gif differ diff --git a/bin/assets/themes/lefty/5.gif b/bin/assets/themes/lefty/5.gif new file mode 100644 index 0000000..ce3285f Binary files /dev/null and b/bin/assets/themes/lefty/5.gif differ diff --git a/bin/assets/themes/lefty/6.gif b/bin/assets/themes/lefty/6.gif new file mode 100644 index 0000000..2a6c5ce Binary files /dev/null and b/bin/assets/themes/lefty/6.gif differ diff --git a/bin/assets/themes/lefty/7.gif b/bin/assets/themes/lefty/7.gif new file mode 100644 index 0000000..45f19d5 Binary files /dev/null and b/bin/assets/themes/lefty/7.gif differ diff --git a/bin/assets/themes/lefty/8.gif b/bin/assets/themes/lefty/8.gif new file mode 100644 index 0000000..7747a19 Binary files /dev/null and b/bin/assets/themes/lefty/8.gif differ diff --git a/bin/assets/themes/lefty/9.gif b/bin/assets/themes/lefty/9.gif new file mode 100644 index 0000000..0c854b2 Binary files /dev/null and b/bin/assets/themes/lefty/9.gif differ diff --git a/bin/assets/themes/moe_theme/README.md b/bin/assets/themes/moe_theme/README.md deleted file mode 100644 index 3070402..0000000 --- a/bin/assets/themes/moe_theme/README.md +++ /dev/null @@ -1,2 +0,0 @@ -# 此文件夹内的所有文件全部来自 https://github.com/journey-ad/Moe-counter -# 原作者: journey-ad \ No newline at end of file diff --git a/bin/assets/themes/moe_theme/moebooru-h/0.png b/bin/assets/themes/moebooru-h/0.png similarity index 100% rename from bin/assets/themes/moe_theme/moebooru-h/0.png rename to bin/assets/themes/moebooru-h/0.png diff --git a/bin/assets/themes/moe_theme/moebooru-h/1.png b/bin/assets/themes/moebooru-h/1.png similarity index 100% rename from bin/assets/themes/moe_theme/moebooru-h/1.png rename to bin/assets/themes/moebooru-h/1.png diff --git a/bin/assets/themes/moe_theme/moebooru-h/2.png b/bin/assets/themes/moebooru-h/2.png similarity index 100% rename from bin/assets/themes/moe_theme/moebooru-h/2.png rename to bin/assets/themes/moebooru-h/2.png diff --git a/bin/assets/themes/moe_theme/moebooru-h/3.png b/bin/assets/themes/moebooru-h/3.png similarity index 100% rename from bin/assets/themes/moe_theme/moebooru-h/3.png rename to bin/assets/themes/moebooru-h/3.png diff --git a/bin/assets/themes/moe_theme/moebooru-h/4.png b/bin/assets/themes/moebooru-h/4.png similarity index 100% rename from bin/assets/themes/moe_theme/moebooru-h/4.png rename to bin/assets/themes/moebooru-h/4.png diff --git a/bin/assets/themes/moe_theme/moebooru-h/5.png b/bin/assets/themes/moebooru-h/5.png similarity index 100% rename from bin/assets/themes/moe_theme/moebooru-h/5.png rename to bin/assets/themes/moebooru-h/5.png diff --git a/bin/assets/themes/moe_theme/moebooru-h/6.png b/bin/assets/themes/moebooru-h/6.png similarity index 100% rename from bin/assets/themes/moe_theme/moebooru-h/6.png rename to bin/assets/themes/moebooru-h/6.png diff --git a/bin/assets/themes/moe_theme/moebooru-h/7.png b/bin/assets/themes/moebooru-h/7.png similarity index 100% rename from bin/assets/themes/moe_theme/moebooru-h/7.png rename to bin/assets/themes/moebooru-h/7.png diff --git a/bin/assets/themes/moe_theme/moebooru-h/8.png b/bin/assets/themes/moebooru-h/8.png similarity index 100% rename from bin/assets/themes/moe_theme/moebooru-h/8.png rename to bin/assets/themes/moebooru-h/8.png diff --git a/bin/assets/themes/moe_theme/moebooru-h/9.png b/bin/assets/themes/moebooru-h/9.png similarity index 100% rename from bin/assets/themes/moe_theme/moebooru-h/9.png rename to bin/assets/themes/moebooru-h/9.png diff --git a/bin/assets/themes/moe_theme/moebooru/0.gif b/bin/assets/themes/moebooru/0.gif similarity index 100% rename from bin/assets/themes/moe_theme/moebooru/0.gif rename to bin/assets/themes/moebooru/0.gif diff --git a/bin/assets/themes/moe_theme/moebooru/1.gif b/bin/assets/themes/moebooru/1.gif similarity index 100% rename from bin/assets/themes/moe_theme/moebooru/1.gif rename to bin/assets/themes/moebooru/1.gif diff --git a/bin/assets/themes/moe_theme/moebooru/2.gif b/bin/assets/themes/moebooru/2.gif similarity index 100% rename from bin/assets/themes/moe_theme/moebooru/2.gif rename to bin/assets/themes/moebooru/2.gif diff --git a/bin/assets/themes/moe_theme/moebooru/3.gif b/bin/assets/themes/moebooru/3.gif similarity index 100% rename from bin/assets/themes/moe_theme/moebooru/3.gif rename to bin/assets/themes/moebooru/3.gif diff --git a/bin/assets/themes/moe_theme/moebooru/4.gif b/bin/assets/themes/moebooru/4.gif similarity index 100% rename from bin/assets/themes/moe_theme/moebooru/4.gif rename to bin/assets/themes/moebooru/4.gif diff --git a/bin/assets/themes/moe_theme/moebooru/5.gif b/bin/assets/themes/moebooru/5.gif similarity index 100% rename from bin/assets/themes/moe_theme/moebooru/5.gif rename to bin/assets/themes/moebooru/5.gif diff --git a/bin/assets/themes/moe_theme/moebooru/6.gif b/bin/assets/themes/moebooru/6.gif similarity index 100% rename from bin/assets/themes/moe_theme/moebooru/6.gif rename to bin/assets/themes/moebooru/6.gif diff --git a/bin/assets/themes/moe_theme/moebooru/7.gif b/bin/assets/themes/moebooru/7.gif similarity index 100% rename from bin/assets/themes/moe_theme/moebooru/7.gif rename to bin/assets/themes/moebooru/7.gif diff --git a/bin/assets/themes/moe_theme/moebooru/8.gif b/bin/assets/themes/moebooru/8.gif similarity index 100% rename from bin/assets/themes/moe_theme/moebooru/8.gif rename to bin/assets/themes/moebooru/8.gif diff --git a/bin/assets/themes/moe_theme/moebooru/9.gif b/bin/assets/themes/moebooru/9.gif similarity index 100% rename from bin/assets/themes/moe_theme/moebooru/9.gif rename to bin/assets/themes/moebooru/9.gif diff --git a/bin/assets/themes/proton/0.gif b/bin/assets/themes/proton/0.gif new file mode 100644 index 0000000..237b716 Binary files /dev/null and b/bin/assets/themes/proton/0.gif differ diff --git a/bin/assets/themes/proton/1.gif b/bin/assets/themes/proton/1.gif new file mode 100644 index 0000000..3e3e662 Binary files /dev/null and b/bin/assets/themes/proton/1.gif differ diff --git a/bin/assets/themes/proton/2.gif b/bin/assets/themes/proton/2.gif new file mode 100644 index 0000000..11f33ff Binary files /dev/null and b/bin/assets/themes/proton/2.gif differ diff --git a/bin/assets/themes/proton/3.gif b/bin/assets/themes/proton/3.gif new file mode 100644 index 0000000..fcd7f2e Binary files /dev/null and b/bin/assets/themes/proton/3.gif differ diff --git a/bin/assets/themes/proton/4.gif b/bin/assets/themes/proton/4.gif new file mode 100644 index 0000000..77048df Binary files /dev/null and b/bin/assets/themes/proton/4.gif differ diff --git a/bin/assets/themes/proton/5.gif b/bin/assets/themes/proton/5.gif new file mode 100644 index 0000000..c228b6b Binary files /dev/null and b/bin/assets/themes/proton/5.gif differ diff --git a/bin/assets/themes/proton/6.gif b/bin/assets/themes/proton/6.gif new file mode 100644 index 0000000..006218d Binary files /dev/null and b/bin/assets/themes/proton/6.gif differ diff --git a/bin/assets/themes/proton/7.gif b/bin/assets/themes/proton/7.gif new file mode 100644 index 0000000..8ebf9cd Binary files /dev/null and b/bin/assets/themes/proton/7.gif differ diff --git a/bin/assets/themes/proton/8.gif b/bin/assets/themes/proton/8.gif new file mode 100644 index 0000000..9b2e699 Binary files /dev/null and b/bin/assets/themes/proton/8.gif differ diff --git a/bin/assets/themes/proton/9.gif b/bin/assets/themes/proton/9.gif new file mode 100644 index 0000000..3f829cf Binary files /dev/null and b/bin/assets/themes/proton/9.gif differ diff --git a/bin/assets/themes/rfck/0.gif b/bin/assets/themes/rfck/0.gif new file mode 100644 index 0000000..e01ac20 Binary files /dev/null and b/bin/assets/themes/rfck/0.gif differ diff --git a/bin/assets/themes/rfck/1.gif b/bin/assets/themes/rfck/1.gif new file mode 100644 index 0000000..c5dfb12 Binary files /dev/null and b/bin/assets/themes/rfck/1.gif differ diff --git a/bin/assets/themes/rfck/2.gif b/bin/assets/themes/rfck/2.gif new file mode 100644 index 0000000..e32a7ac Binary files /dev/null and b/bin/assets/themes/rfck/2.gif differ diff --git a/bin/assets/themes/rfck/3.gif b/bin/assets/themes/rfck/3.gif new file mode 100644 index 0000000..72b60f8 Binary files /dev/null and b/bin/assets/themes/rfck/3.gif differ diff --git a/bin/assets/themes/rfck/4.gif b/bin/assets/themes/rfck/4.gif new file mode 100644 index 0000000..b3220ce Binary files /dev/null and b/bin/assets/themes/rfck/4.gif differ diff --git a/bin/assets/themes/rfck/5.gif b/bin/assets/themes/rfck/5.gif new file mode 100644 index 0000000..ec96be6 Binary files /dev/null and b/bin/assets/themes/rfck/5.gif differ diff --git a/bin/assets/themes/rfck/6.gif b/bin/assets/themes/rfck/6.gif new file mode 100644 index 0000000..a28424c Binary files /dev/null and b/bin/assets/themes/rfck/6.gif differ diff --git a/bin/assets/themes/rfck/7.gif b/bin/assets/themes/rfck/7.gif new file mode 100644 index 0000000..affe337 Binary files /dev/null and b/bin/assets/themes/rfck/7.gif differ diff --git a/bin/assets/themes/rfck/8.gif b/bin/assets/themes/rfck/8.gif new file mode 100644 index 0000000..df42c09 Binary files /dev/null and b/bin/assets/themes/rfck/8.gif differ diff --git a/bin/assets/themes/rfck/9.gif b/bin/assets/themes/rfck/9.gif new file mode 100644 index 0000000..1866013 Binary files /dev/null and b/bin/assets/themes/rfck/9.gif differ diff --git a/bin/assets/themes/moe_theme/rule34/0.gif b/bin/assets/themes/rule34/0.gif similarity index 100% rename from bin/assets/themes/moe_theme/rule34/0.gif rename to bin/assets/themes/rule34/0.gif diff --git a/bin/assets/themes/moe_theme/rule34/1.gif b/bin/assets/themes/rule34/1.gif similarity index 100% rename from bin/assets/themes/moe_theme/rule34/1.gif rename to bin/assets/themes/rule34/1.gif diff --git a/bin/assets/themes/moe_theme/rule34/2.gif b/bin/assets/themes/rule34/2.gif similarity index 100% rename from bin/assets/themes/moe_theme/rule34/2.gif rename to bin/assets/themes/rule34/2.gif diff --git a/bin/assets/themes/moe_theme/rule34/3.gif b/bin/assets/themes/rule34/3.gif similarity index 100% rename from bin/assets/themes/moe_theme/rule34/3.gif rename to bin/assets/themes/rule34/3.gif diff --git a/bin/assets/themes/moe_theme/rule34/4.gif b/bin/assets/themes/rule34/4.gif similarity index 100% rename from bin/assets/themes/moe_theme/rule34/4.gif rename to bin/assets/themes/rule34/4.gif diff --git a/bin/assets/themes/moe_theme/rule34/5.gif b/bin/assets/themes/rule34/5.gif similarity index 100% rename from bin/assets/themes/moe_theme/rule34/5.gif rename to bin/assets/themes/rule34/5.gif diff --git a/bin/assets/themes/moe_theme/rule34/6.gif b/bin/assets/themes/rule34/6.gif similarity index 100% rename from bin/assets/themes/moe_theme/rule34/6.gif rename to bin/assets/themes/rule34/6.gif diff --git a/bin/assets/themes/moe_theme/rule34/7.gif b/bin/assets/themes/rule34/7.gif similarity index 100% rename from bin/assets/themes/moe_theme/rule34/7.gif rename to bin/assets/themes/rule34/7.gif diff --git a/bin/assets/themes/moe_theme/rule34/8.gif b/bin/assets/themes/rule34/8.gif similarity index 100% rename from bin/assets/themes/moe_theme/rule34/8.gif rename to bin/assets/themes/rule34/8.gif diff --git a/bin/assets/themes/moe_theme/rule34/9.gif b/bin/assets/themes/rule34/9.gif similarity index 100% rename from bin/assets/themes/moe_theme/rule34/9.gif rename to bin/assets/themes/rule34/9.gif diff --git a/bin/assets/themes/steambanners/0.gif b/bin/assets/themes/steambanners/0.gif new file mode 100644 index 0000000..9773838 Binary files /dev/null and b/bin/assets/themes/steambanners/0.gif differ diff --git a/bin/assets/themes/steambanners/1.gif b/bin/assets/themes/steambanners/1.gif new file mode 100644 index 0000000..a62a419 Binary files /dev/null and b/bin/assets/themes/steambanners/1.gif differ diff --git a/bin/assets/themes/steambanners/2.gif b/bin/assets/themes/steambanners/2.gif new file mode 100644 index 0000000..cd84d6d Binary files /dev/null and b/bin/assets/themes/steambanners/2.gif differ diff --git a/bin/assets/themes/steambanners/3.gif b/bin/assets/themes/steambanners/3.gif new file mode 100644 index 0000000..eaf5250 Binary files /dev/null and b/bin/assets/themes/steambanners/3.gif differ diff --git a/bin/assets/themes/steambanners/4.gif b/bin/assets/themes/steambanners/4.gif new file mode 100644 index 0000000..a614f74 Binary files /dev/null and b/bin/assets/themes/steambanners/4.gif differ diff --git a/bin/assets/themes/steambanners/5.gif b/bin/assets/themes/steambanners/5.gif new file mode 100644 index 0000000..c87df90 Binary files /dev/null and b/bin/assets/themes/steambanners/5.gif differ diff --git a/bin/assets/themes/steambanners/6.gif b/bin/assets/themes/steambanners/6.gif new file mode 100644 index 0000000..629e4f1 Binary files /dev/null and b/bin/assets/themes/steambanners/6.gif differ diff --git a/bin/assets/themes/steambanners/7.gif b/bin/assets/themes/steambanners/7.gif new file mode 100644 index 0000000..076c3e9 Binary files /dev/null and b/bin/assets/themes/steambanners/7.gif differ diff --git a/bin/assets/themes/steambanners/8.gif b/bin/assets/themes/steambanners/8.gif new file mode 100644 index 0000000..b836654 Binary files /dev/null and b/bin/assets/themes/steambanners/8.gif differ diff --git a/bin/assets/themes/steambanners/9.gif b/bin/assets/themes/steambanners/9.gif new file mode 100644 index 0000000..4d8f92a Binary files /dev/null and b/bin/assets/themes/steambanners/9.gif differ diff --git a/bin/assets/themes/sthg/0.gif b/bin/assets/themes/sthg/0.gif new file mode 100644 index 0000000..4e1b728 Binary files /dev/null and b/bin/assets/themes/sthg/0.gif differ diff --git a/bin/assets/themes/sthg/1.gif b/bin/assets/themes/sthg/1.gif new file mode 100644 index 0000000..4cc5797 Binary files /dev/null and b/bin/assets/themes/sthg/1.gif differ diff --git a/bin/assets/themes/sthg/2.gif b/bin/assets/themes/sthg/2.gif new file mode 100644 index 0000000..413041e Binary files /dev/null and b/bin/assets/themes/sthg/2.gif differ diff --git a/bin/assets/themes/sthg/3.gif b/bin/assets/themes/sthg/3.gif new file mode 100644 index 0000000..419734c Binary files /dev/null and b/bin/assets/themes/sthg/3.gif differ diff --git a/bin/assets/themes/sthg/4.gif b/bin/assets/themes/sthg/4.gif new file mode 100644 index 0000000..a926113 Binary files /dev/null and b/bin/assets/themes/sthg/4.gif differ diff --git a/bin/assets/themes/sthg/5.gif b/bin/assets/themes/sthg/5.gif new file mode 100644 index 0000000..b3602e7 Binary files /dev/null and b/bin/assets/themes/sthg/5.gif differ diff --git a/bin/assets/themes/sthg/6.gif b/bin/assets/themes/sthg/6.gif new file mode 100644 index 0000000..fc4cf80 Binary files /dev/null and b/bin/assets/themes/sthg/6.gif differ diff --git a/bin/assets/themes/sthg/7.gif b/bin/assets/themes/sthg/7.gif new file mode 100644 index 0000000..6c5cfec Binary files /dev/null and b/bin/assets/themes/sthg/7.gif differ diff --git a/bin/assets/themes/sthg/8.gif b/bin/assets/themes/sthg/8.gif new file mode 100644 index 0000000..9cb2870 Binary files /dev/null and b/bin/assets/themes/sthg/8.gif differ diff --git a/bin/assets/themes/sthg/9.gif b/bin/assets/themes/sthg/9.gif new file mode 100644 index 0000000..581a708 Binary files /dev/null and b/bin/assets/themes/sthg/9.gif differ diff --git a/bin/assets/themes/t1/0.svg b/bin/assets/themes/t1/0.svg deleted file mode 100644 index 70cb461..0000000 --- a/bin/assets/themes/t1/0.svg +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/bin/assets/themes/t1/1.svg b/bin/assets/themes/t1/1.svg deleted file mode 100644 index c34821b..0000000 --- a/bin/assets/themes/t1/1.svg +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/bin/assets/themes/t1/2.svg b/bin/assets/themes/t1/2.svg deleted file mode 100644 index 6983a3c..0000000 --- a/bin/assets/themes/t1/2.svg +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/bin/assets/themes/t1/3.svg b/bin/assets/themes/t1/3.svg deleted file mode 100644 index bc5067b..0000000 --- a/bin/assets/themes/t1/3.svg +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/bin/assets/themes/t1/4.svg b/bin/assets/themes/t1/4.svg deleted file mode 100644 index 966cd26..0000000 --- a/bin/assets/themes/t1/4.svg +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/bin/assets/themes/t1/5.svg b/bin/assets/themes/t1/5.svg deleted file mode 100644 index 1d23ff8..0000000 --- a/bin/assets/themes/t1/5.svg +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/bin/assets/themes/t1/6.svg b/bin/assets/themes/t1/6.svg deleted file mode 100644 index 98e8e5f..0000000 --- a/bin/assets/themes/t1/6.svg +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/bin/assets/themes/t1/7.svg b/bin/assets/themes/t1/7.svg deleted file mode 100644 index 72ad1ac..0000000 --- a/bin/assets/themes/t1/7.svg +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/bin/assets/themes/t1/8.svg b/bin/assets/themes/t1/8.svg deleted file mode 100644 index 51e522d..0000000 --- a/bin/assets/themes/t1/8.svg +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/bin/assets/themes/t1/9.svg b/bin/assets/themes/t1/9.svg deleted file mode 100644 index f9be6bc..0000000 --- a/bin/assets/themes/t1/9.svg +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/bin/assets/themes/t2/0 黄色.svg b/bin/assets/themes/t2/0 黄色.svg deleted file mode 100644 index e22900e..0000000 --- a/bin/assets/themes/t2/0 黄色.svg +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/bin/assets/themes/t2/1 黄色.svg b/bin/assets/themes/t2/1 黄色.svg deleted file mode 100644 index 7354859..0000000 --- a/bin/assets/themes/t2/1 黄色.svg +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/bin/assets/themes/t2/2 黄色.svg b/bin/assets/themes/t2/2 黄色.svg deleted file mode 100644 index 3316fde..0000000 --- a/bin/assets/themes/t2/2 黄色.svg +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/bin/assets/themes/t2/3 黄色.svg b/bin/assets/themes/t2/3 黄色.svg deleted file mode 100644 index 570f3a8..0000000 --- a/bin/assets/themes/t2/3 黄色.svg +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/bin/assets/themes/t2/4 黄色.svg b/bin/assets/themes/t2/4 黄色.svg deleted file mode 100644 index d3b3dd6..0000000 --- a/bin/assets/themes/t2/4 黄色.svg +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/bin/assets/themes/t2/5 黄色.svg b/bin/assets/themes/t2/5 黄色.svg deleted file mode 100644 index 6da0e10..0000000 --- a/bin/assets/themes/t2/5 黄色.svg +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/bin/assets/themes/t2/6 黄色.svg b/bin/assets/themes/t2/6 黄色.svg deleted file mode 100644 index fe57837..0000000 --- a/bin/assets/themes/t2/6 黄色.svg +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/bin/assets/themes/t2/7 黄色.svg b/bin/assets/themes/t2/7 黄色.svg deleted file mode 100644 index f5cc797..0000000 --- a/bin/assets/themes/t2/7 黄色.svg +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/bin/assets/themes/t2/8 黄色.svg b/bin/assets/themes/t2/8 黄色.svg deleted file mode 100644 index c9f749c..0000000 --- a/bin/assets/themes/t2/8 黄色.svg +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/bin/assets/themes/t2/9 黄色.svg b/bin/assets/themes/t2/9 黄色.svg deleted file mode 100644 index 48c7953..0000000 --- a/bin/assets/themes/t2/9 黄色.svg +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/bin/assets/themes/tcc/0.gif b/bin/assets/themes/tcc/0.gif new file mode 100644 index 0000000..e474210 Binary files /dev/null and b/bin/assets/themes/tcc/0.gif differ diff --git a/bin/assets/themes/tcc/1.gif b/bin/assets/themes/tcc/1.gif new file mode 100644 index 0000000..7f6769c Binary files /dev/null and b/bin/assets/themes/tcc/1.gif differ diff --git a/bin/assets/themes/tcc/2.gif b/bin/assets/themes/tcc/2.gif new file mode 100644 index 0000000..9b5b830 Binary files /dev/null and b/bin/assets/themes/tcc/2.gif differ diff --git a/bin/assets/themes/tcc/3.gif b/bin/assets/themes/tcc/3.gif new file mode 100644 index 0000000..a6ca42a Binary files /dev/null and b/bin/assets/themes/tcc/3.gif differ diff --git a/bin/assets/themes/tcc/4.gif b/bin/assets/themes/tcc/4.gif new file mode 100644 index 0000000..9ae9e09 Binary files /dev/null and b/bin/assets/themes/tcc/4.gif differ diff --git a/bin/assets/themes/tcc/5.gif b/bin/assets/themes/tcc/5.gif new file mode 100644 index 0000000..34935fc Binary files /dev/null and b/bin/assets/themes/tcc/5.gif differ diff --git a/bin/assets/themes/tcc/6.gif b/bin/assets/themes/tcc/6.gif new file mode 100644 index 0000000..081c0cf Binary files /dev/null and b/bin/assets/themes/tcc/6.gif differ diff --git a/bin/assets/themes/tcc/7.gif b/bin/assets/themes/tcc/7.gif new file mode 100644 index 0000000..c8dfb36 Binary files /dev/null and b/bin/assets/themes/tcc/7.gif differ diff --git a/bin/assets/themes/tcc/8.gif b/bin/assets/themes/tcc/8.gif new file mode 100644 index 0000000..4a33b29 Binary files /dev/null and b/bin/assets/themes/tcc/8.gif differ diff --git a/bin/assets/themes/tcc/9.gif b/bin/assets/themes/tcc/9.gif new file mode 100644 index 0000000..250c103 Binary files /dev/null and b/bin/assets/themes/tcc/9.gif differ diff --git a/bin/core/__init__.py b/bin/core/__init__.py index d4c17cc..ac042b8 100644 --- a/bin/core/__init__.py +++ b/bin/core/__init__.py @@ -1,7 +1,7 @@ -#!/usr/bin/env python3 -# -- coding:utf-8 -- -# @Author: markushammered@gmail.com -# @Development Tool: PyCharm -# @Create Time: 2022/2/5 -# @File Name: __init__.py.py - +#!/usr/bin/env python3 +# -- coding:utf-8 -- +# @Author: markushammered@gmail.com +# @Development Tool: PyCharm +# @Create Time: 2022/2/5 +# @File Name: __init__.py.py + diff --git a/bin/core/b64img.py b/bin/core/b64img.py index 00f672b..3171cc2 100644 --- a/bin/core/b64img.py +++ b/bin/core/b64img.py @@ -1,76 +1,65 @@ -#!/usr/bin/env python3 -# -- coding:utf-8 -- -# @Author: markushammered@gmail.com -# @Development Tool: PyCharm -# @Create Time: 2022/2/3 -# @File Name: b64img.py - - -import sqlite3 - - -def re_sort_number_image(origin_number: str, theme: str) -> list: - """ - 返回一个排列好的svg base64代码列表 - :param theme: - :param origin_number: - :return: - """ - print(theme) - if theme == 't1': - cursor.execute('select * from theme1') - elif theme == 't2': - cursor.execute('select * from theme2') - elif theme == 'gelbooru': - cursor.execute('select * from gelbooru') - elif theme == 'gelbooru-h': - cursor.execute('select * from gelbooruh') - elif theme == 'moebooru': - cursor.execute('select * from moebooru') - elif theme == 'moebooru-h': - cursor.execute('select * from moebooruh') - elif theme == 'rule34': - cursor.execute('select * from rule34') - else: - cursor.execute('select * from rule34') - data = cursor.fetchall() - temp_dict = {} - for k, v in data: - temp_dict.setdefault(k, []).append(v) - for i, c in zip(temp_dict.keys(), temp_dict.values()): - temp_dict[i] = c[0] - - final_b64_img_code = [] - if origin_number != '0000000000': - for i in origin_number: - if i == '0': - final_b64_img_code.append(temp_dict.get(str(i))) - elif i == '1': - final_b64_img_code.append(temp_dict.get(str(i))) - elif i == '2': - final_b64_img_code.append(temp_dict.get(str(i))) - elif i == '3': - final_b64_img_code.append(temp_dict.get(str(i))) - elif i == '4': - final_b64_img_code.append(temp_dict.get(str(i))) - elif i == '5': - final_b64_img_code.append(temp_dict.get(str(i))) - elif i == '6': - final_b64_img_code.append(temp_dict.get(str(i))) - elif i == '7': - final_b64_img_code.append(temp_dict.get(str(i))) - elif i == '8': - final_b64_img_code.append(temp_dict.get(str(i))) - elif i == '9': - final_b64_img_code.append(temp_dict.get(str(i))) - - return final_b64_img_code - else: - for i in range(10): - final_b64_img_code.append(temp_dict.get(str(0))) - return final_b64_img_code - - -if __name__ != '__main__': - conn = sqlite3.connect('./bin/assets/theme.db') - cursor = conn.cursor() +#!/usr/bin/env python3 +# -- coding:utf-8 -- +# @Author: markushammered@gmail.com +# @Development Tool: PyCharm +# @Create Time: 2022/2/3 +# @File Name: b64img.py + + +import sqlite3 + + +def re_sort_number_image(origin_number: str, theme: str) -> list: + """ + 返回一个排列好的svg base64代码列表 + :param theme: + :param origin_number: + :return: + """ + try: + cursor.execute('select * from %(theme_db)s' % {'theme_db': theme} ) + except sqlite3.OperationalError: + return False + width_list = [] + height_list = [] + b_64_list = [] + data = cursor.fetchall() + for i in data: + width_list.append(i[2]) + height_list.append(i[3]) + b_64_list.append(i[1]) + + final_b64_img_code = [] + if origin_number != '0000000000': + for i in origin_number: + if i == '0': + final_b64_img_code.append(b_64_list[0]) + elif i == '1': + final_b64_img_code.append(b_64_list[1]) + elif i == '2': + final_b64_img_code.append(b_64_list[2]) + elif i == '3': + final_b64_img_code.append(b_64_list[3]) + elif i == '4': + final_b64_img_code.append(b_64_list[4]) + elif i == '5': + final_b64_img_code.append(b_64_list[5]) + elif i == '6': + final_b64_img_code.append(b_64_list[6]) + elif i == '7': + final_b64_img_code.append(b_64_list[7]) + elif i == '8': + final_b64_img_code.append(b_64_list[8]) + elif i == '9': + final_b64_img_code.append(b_64_list[9]) + + return final_b64_img_code, width_list[0], height_list[0] + else: + for i in range(10): + final_b64_img_code.append(b_64_list[0]) + return final_b64_img_code, width_list[0], height_list[0] + + +if __name__ != '__main__': + conn = sqlite3.connect('./bin/assets/theme.db', check_same_thread=False) + cursor = conn.cursor() diff --git a/bin/core/render_.py b/bin/core/render_.py index 61a054f..faedea1 100644 --- a/bin/core/render_.py +++ b/bin/core/render_.py @@ -1,76 +1,123 @@ -#!/usr/bin/env python3 -# -- coding:utf-8 -- -# @Author: markushammered@gmail.com -# @Development Tool: PyCharm -# @Create Time: 2022/2/5 -# @File Name: render_.py - - -from flask import render_template - - -def render_temp_(length: int, name: str, image_list: list, theme: str) -> str: - """ - 代码很烂写到隐蔽的地方就看不见了 - :param theme: - :param length: - :param name: - :param image_list: - :return: - """ - if 'gelbooru' in theme: - file_name = f'index{length}-spec.html' - else: - file_name = f'index{length}.html' - - # 自己写的都看不下去了 - if length == 7: - return render_template(file_name, - title=name, - svg_img_0=f'{image_list[0]}', - svg_img_1=f'{image_list[1]}', - svg_img_2=f'{image_list[2]}', - svg_img_3=f'{image_list[3]}', - svg_img_4=f'{image_list[4]}', - svg_img_5=f'{image_list[5]}', - svg_img_6=f'{image_list[6]}' - ) - elif length == 8: - return render_template(file_name, - title=name, - svg_img_0=f'{image_list[0]}', - svg_img_1=f'{image_list[1]}', - svg_img_2=f'{image_list[2]}', - svg_img_3=f'{image_list[3]}', - svg_img_4=f'{image_list[4]}', - svg_img_5=f'{image_list[5]}', - svg_img_6=f'{image_list[6]}', - svg_img_7=f'{image_list[7]}' - ) - elif length == 9: - return render_template(file_name, - title=name, - svg_img_0=f'{image_list[0]}', - svg_img_1=f'{image_list[1]}', - svg_img_2=f'{image_list[2]}', - svg_img_3=f'{image_list[3]}', - svg_img_4=f'{image_list[4]}', - svg_img_5=f'{image_list[5]}', - svg_img_6=f'{image_list[6]}', - svg_img_7=f'{image_list[7]}', - svg_img_8=f'{image_list[8]}', - ) - elif length == 10: - return render_template(file_name, - title=name, - svg_img_0=f'{image_list[0]}', - svg_img_1=f'{image_list[1]}', - svg_img_2=f'{image_list[2]}', - svg_img_3=f'{image_list[3]}', - svg_img_4=f'{image_list[4]}', - svg_img_5=f'{image_list[5]}', - svg_img_6=f'{image_list[6]}', - svg_img_7=f'{image_list[7]}', - svg_img_8=f'{image_list[8]}', - svg_img_9=f'{image_list[9]}' - ) +#!/usr/bin/env python3 +# -- coding:utf-8 -- +# @Author: markushammered@gmail.com +# @Development Tool: PyCharm +# @Create Time: 2022/2/5 +# @File Name: render_.py + + +from flask import render_template + + +def render_temp_(length: int, name: str, image_list: list, width: int, height: int) -> str: + """ + 代码很烂写到隐蔽的地方就看不见了 + :param height: + :param width: + :param length: + :param name: + :param image_list: + :return: + """ + position_list = [] + for i in range(0, length): + position_list.append(i * width) + file_name = f'index{length}.html' + + # 自己写的都看不下去了 + if length == 7: + return render_template(file_name, + title=name, + g_width=length * width, + width=width, + height=height, + x_position_0=position_list[0], + x_position_1=position_list[1], + x_position_2=position_list[2], + x_position_3=position_list[3], + x_position_4=position_list[4], + x_position_5=position_list[5], + x_position_6=position_list[6], + svg_img_0=f'{image_list[0]}', + svg_img_1=f'{image_list[1]}', + svg_img_2=f'{image_list[2]}', + svg_img_3=f'{image_list[3]}', + svg_img_4=f'{image_list[4]}', + svg_img_5=f'{image_list[5]}', + svg_img_6=f'{image_list[6]}' + ) + elif length == 8: + return render_template(file_name, + title=name, + g_width=length * width, + width=width, + height=height, + x_position_0=position_list[0], + x_position_1=position_list[1], + x_position_2=position_list[2], + x_position_3=position_list[3], + x_position_4=position_list[4], + x_position_5=position_list[5], + x_position_6=position_list[6], + x_position_7=position_list[7], + svg_img_0=f'{image_list[0]}', + svg_img_1=f'{image_list[1]}', + svg_img_2=f'{image_list[2]}', + svg_img_3=f'{image_list[3]}', + svg_img_4=f'{image_list[4]}', + svg_img_5=f'{image_list[5]}', + svg_img_6=f'{image_list[6]}', + svg_img_7=f'{image_list[7]}' + ) + elif length == 9: + return render_template(file_name, + title=name, + g_width=length * width, + width=width, + height=height, + x_position_0=position_list[0], + x_position_1=position_list[1], + x_position_2=position_list[2], + x_position_3=position_list[3], + x_position_4=position_list[4], + x_position_5=position_list[5], + x_position_6=position_list[6], + x_position_7=position_list[7], + x_position_8=position_list[8], + svg_img_0=f'{image_list[0]}', + svg_img_1=f'{image_list[1]}', + svg_img_2=f'{image_list[2]}', + svg_img_3=f'{image_list[3]}', + svg_img_4=f'{image_list[4]}', + svg_img_5=f'{image_list[5]}', + svg_img_6=f'{image_list[6]}', + svg_img_7=f'{image_list[7]}', + svg_img_8=f'{image_list[8]}', + ) + elif length == 10: + return render_template(file_name, + title=name, + g_width=length * width, + width=width, + height=height, + x_position_0=position_list[0], + x_position_1=position_list[1], + x_position_2=position_list[2], + x_position_3=position_list[3], + x_position_4=position_list[4], + x_position_5=position_list[5], + x_position_6=position_list[6], + x_position_7=position_list[7], + x_position_8=position_list[8], + x_position_9=position_list[9], + svg_img_0=f'{image_list[0]}', + svg_img_1=f'{image_list[1]}', + svg_img_2=f'{image_list[2]}', + svg_img_3=f'{image_list[3]}', + svg_img_4=f'{image_list[4]}', + svg_img_5=f'{image_list[5]}', + svg_img_6=f'{image_list[6]}', + svg_img_7=f'{image_list[7]}', + svg_img_8=f'{image_list[8]}', + svg_img_9=f'{image_list[9]}' + ) diff --git a/bin/tests/__init__.py b/bin/tests/__init__.py index b37b178..05bafe1 100644 --- a/bin/tests/__init__.py +++ b/bin/tests/__init__.py @@ -1,11 +1,11 @@ -#!/usr/bin/env python3 -# -- coding:utf-8 -- -# @Author: markushammered@gmail.com -# @Development Tool: PyCharm -# @Create Time: 2022/2/3 -# @File Name: __init__.py.py - -import sys - -sys.stdout.write('\033[1;31m请不要调用此目录下的任何文件! 此目录文件仅作测试用!\033[0m') -sys.exit(-1) +#!/usr/bin/env python3 +# -- coding:utf-8 -- +# @Author: markushammered@gmail.com +# @Development Tool: PyCharm +# @Create Time: 2022/2/3 +# @File Name: __init__.py.py + +import sys + +sys.stdout.write('\033[1;31m请不要调用此目录下的任何文件! 此目录文件仅作测试用!\033[0m') +sys.exit(-1) diff --git a/bin/tests/base2img.py b/bin/tests/base2img.py index 6cbe0dd..2214ff4 100644 --- a/bin/tests/base2img.py +++ b/bin/tests/base2img.py @@ -1,42 +1,42 @@ -#!/usr/bin/env python3 -# -- coding:utf-8 -- -# @Author: markushammered@gmail.com -# @Development Tool: PyCharm -# @Create Time: 2022/2/3 -# @File Name: base2img.py - -import base64 -import os - - -def convert_single() -> None: - """ - - :return: - """ - # image转base64 - with open(f'../../static/example.png', 'rb') as f: - base64_data = base64.b64encode(f.read()) - base64_code = 'data:image/jpeg;base64,' + base64_data.decode('utf-8') - print(base64_code) - - -def convert_multi() -> None: - """ - - :return: - """ - file_list = os.listdir('../res/images') - dict_count = 0 - img_dict = {} - for i in file_list: - with open(f'../res/images/theme2{i}', 'rb') as f: - base64_data = base64.b64encode(f.read()) - base64_code = 'data:image/svg+xml;base64,' + base64_data.decode('utf-8') - img_dict[str(dict_count)] = base64_code - dict_count += 1 - - print(img_dict) - - +#!/usr/bin/env python3 +# -- coding:utf-8 -- +# @Author: markushammered@gmail.com +# @Development Tool: PyCharm +# @Create Time: 2022/2/3 +# @File Name: base2img.py + +import base64 +import os + + +def convert_single() -> None: + """ + + :return: + """ + # image转base64 + with open(f'../../static/example.png', 'rb') as f: + base64_data = base64.b64encode(f.read()) + base64_code = 'data:image/jpeg;base64,' + base64_data.decode('utf-8') + print(base64_code) + + +def convert_multi() -> None: + """ + + :return: + """ + file_list = os.listdir('../res/images') + dict_count = 0 + img_dict = {} + for i in file_list: + with open(f'../res/images/theme2{i}', 'rb') as f: + base64_data = base64.b64encode(f.read()) + base64_code = 'data:image/svg+xml;base64,' + base64_data.decode('utf-8') + img_dict[str(dict_count)] = base64_code + dict_count += 1 + + print(img_dict) + + convert_multi() \ No newline at end of file diff --git a/bin/tests/db_test.py b/bin/tests/db_test.py new file mode 100644 index 0000000..4d9cf48 --- /dev/null +++ b/bin/tests/db_test.py @@ -0,0 +1,7 @@ +import sqlite3 + +conn = sqlite3.connect('../assets/theme.db') +cursor = conn.cursor() +cursor.execute('select * from sqlite_master where type="table"') +data = cursor.fetchall() +print(data) diff --git a/bin/tests/download_img.py b/bin/tests/download_img.py index dbb1694..f015535 100644 --- a/bin/tests/download_img.py +++ b/bin/tests/download_img.py @@ -1,6 +1,31 @@ -#!/usr/bin/env python3 -# -- coding:utf-8 -- -# @Author: markushammered@gmail.com -# @Development Tool: PyCharm -# @Create Time: 2022/2/8 -# @File Name: download_img.py \ No newline at end of file +#!/usr/bin/env python3 +# -- coding:utf-8 -- +# @Author: markushammered@gmail.com +# @Development Tool: PyCharm +# @Create Time: 2022/2/8 +# @File Name: download_img.py + +import os +import requests +import threading + +proxies = { + 'http': '127.0.0.1:8889', + 'https': '127.0.0.1:8889' +} + + +def thread_(i, main_url, dir): + res = requests.get(f'{main_url}/{i}.gif', proxies=proxies) + with open(f'../assets/themes/{dir}/{i}.gif', 'wb') as f: + f.write(res.content) + + +while True: + url = input('->') + url = url.replace('https://', '|') + url = ''.join(url.split('/')[:-2]).replace('|', 'https://') + '/counter' + dir = url.split('.')[0].split('//')[-1] + os.mkdir(f'../assets/themes/{dir}') + for i in range(0, 10): + threading.Thread(target=thread_, args=(i, url, dir)).start() diff --git a/bin/tests/dump_theme_db.py b/bin/tests/dump_theme_db.py index 4c30b9a..fb6fd08 100644 --- a/bin/tests/dump_theme_db.py +++ b/bin/tests/dump_theme_db.py @@ -1,29 +1,29 @@ -#!/usr/bin/env python3 -# -- coding:utf-8 -- -# @Author: markushammered@gmail.com -# @Development Tool: PyCharm -# @Create Time: 2022/2/7 -# @File Name: dump_theme_db.py - - -import os -import base64 -import sqlite3 - -conn = sqlite3.connect('../assets/theme.db') -cursor = conn.cursor() - - -dir_name = 'gelbooru-h' -file_list = os.listdir(f'../assets/themes/moe_theme/{dir_name}') -dict_count = 0 -img_dict = {} -for i in file_list: - with open(f'../assets/themes/moe_theme/{dir_name}/{i}', 'rb') as f: - base64_data = base64.b64encode(f.read()) - base64_code = f'data:image/jpeg;base64,' + base64_data.decode('utf-8') - img_dict[str(dict_count)] = base64_code - dict_count += 1 -for k, v in zip(img_dict.keys(), img_dict.values()): - cursor.execute("insert into gelbooruh values(?, ?)", (k, v)) - conn.commit() +#!/usr/bin/env python3 +# -- coding:utf-8 -- +# @Author: markushammered@gmail.com +# @Development Tool: PyCharm +# @Create Time: 2022/2/7 +# @File Name: dump_theme_db.py + + +import os +import base64 +import sqlite3 + +conn = sqlite3.connect('../assets/theme.db') +cursor = conn.cursor() + + +dir_name = 'gelbooru-h' +file_list = os.listdir(f'../assets/themes/moe_theme/{dir_name}') +dict_count = 0 +img_dict = {} +for i in file_list: + with open(f'../assets/themes/moe_theme/{dir_name}/{i}', 'rb') as f: + base64_data = base64.b64encode(f.read()) + base64_code = f'data:image/jpeg;base64,' + base64_data.decode('utf-8') + img_dict[str(dict_count)] = base64_code + dict_count += 1 +for k, v in zip(img_dict.keys(), img_dict.values()): + cursor.execute("insert into gelbooruh values(?, ?)", (k, v)) + conn.commit() diff --git a/bin/tests/img_size.py b/bin/tests/img_size.py index 6725e00..8ff23a2 100644 --- a/bin/tests/img_size.py +++ b/bin/tests/img_size.py @@ -1,6 +1,30 @@ -#!/usr/bin/env python3 -# -- coding:utf-8 -- -# @Author: markushammered@gmail.com -# @Development Tool: PyCharm -# @Create Time: 2022/2/8 -# @File Name: img_size.py \ No newline at end of file +#!/usr/bin/env python3 +# -- coding:utf-8 -- +# @Author: markushammered@gmail.com +# @Development Tool: PyCharm +# @Create Time: 2022/2/8 +# @File Name: img_size.py + +import os +from PIL import Image +import sqlite3 + + +def get_info(path, file): + for i in path: + img = Image.open(f'../assets/themes/{path}/{file}') + imgSize = img.size + w = img.width + h = img.height + f = img.format + print(imgSize) + print(w, h, f) + + +file_list = os.listdir('../assets/themes/') +for p in file_list: + lst = os.listdir(f'../assets/themes/{p}') + for i in lst: + get_info(p, i) + + diff --git a/bin/tests/init_db.py b/bin/tests/init_db.py index b0be68a..3d19af6 100644 --- a/bin/tests/init_db.py +++ b/bin/tests/init_db.py @@ -1,26 +1,26 @@ -#!/usr/bin/env python3 -# -- coding:utf-8 -- -# @Author: markushammered@gmail.com -# @Development Tool: PyCharm -# @Create Time: 2022/2/5 -# @File Name: init_db.py - -import os -import sqlite3 -import sys - -if __name__ == '__main__': - while True: - yes_or_no = input('该操作会将数据库初始化输入y继续:') - if yes_or_no == 'y': - os.remove('../../db/data.db') - conn = sqlite3.connect('../../db/data.db') - cursor = conn.cursor() - cursor.execute('create table ReqCount (name text primary key, times integer )') - sys.exit(0) - elif yes_or_no == 'n': - print('已取消') - sys.exit(0) - else: - print('请输入y继续或n退出') - continue +#!/usr/bin/env python3 +# -- coding:utf-8 -- +# @Author: markushammered@gmail.com +# @Development Tool: PyCharm +# @Create Time: 2022/2/5 +# @File Name: init_db.py + +import os +import sqlite3 +import sys + +if __name__ == '__main__': + while True: + yes_or_no = input('该操作会将数据库初始化输入y继续:') + if yes_or_no == 'y': + os.remove('../../db/data.db') + conn = sqlite3.connect('../../db/data.db') + cursor = conn.cursor() + cursor.execute('create table ReqCount (name text primary key, times integer )') + sys.exit(0) + elif yes_or_no == 'n': + print('已取消') + sys.exit(0) + else: + print('请输入y继续或n退出') + continue diff --git a/bin/tests/numberlen.py b/bin/tests/numberlen.py index 723c237..6701da9 100644 --- a/bin/tests/numberlen.py +++ b/bin/tests/numberlen.py @@ -1,16 +1,16 @@ -#!/usr/bin/env python3 -# -- coding:utf-8 -- -# @Author: markushammered@gmail.com -# @Development Tool: PyCharm -# @Create Time: 2022/2/3 -# @File Name: numberlen.py - - -number = 1576451745 - -if len(str(number)) <= 10: - zero_count = 10 - len(str(number)) - final_str = '0' * zero_count + str(number) - print(final_str[9]) -else: +#!/usr/bin/env python3 +# -- coding:utf-8 -- +# @Author: markushammered@gmail.com +# @Development Tool: PyCharm +# @Create Time: 2022/2/3 +# @File Name: numberlen.py + + +number = 1576451745 + +if len(str(number)) <= 10: + zero_count = 10 - len(str(number)) + final_str = '0' * zero_count + str(number) + print(final_str[9]) +else: print('Too much to count') \ No newline at end of file diff --git a/bin/tests/resp_test.py b/bin/tests/resp_test.py index 96f0d64..b275b68 100644 --- a/bin/tests/resp_test.py +++ b/bin/tests/resp_test.py @@ -1,33 +1,33 @@ -#!/usr/bin/env python3 -# -- coding:utf-8 -- -# @Author: markushammered@gmail.com -# @Development Tool: PyCharm -# @Create Time: 2022/2/3 -# @File Name: resp_test.py - -import requests -import random - - -def request_test() -> None: - """ - 请求测试 - :return: - """ - for i in range(100): - resp = requests.get(f'http://127.0.0.1:8000/API?name={i}') - print(resp) - - -def download_test() -> None: - """ - 下载测试 - :return: - """ - - resp = requests.get('https://count.getloli.com/get/@Moe-counter.github') - with open('download_test.html', 'wb') as fp: - fp.write(resp.content) - - +#!/usr/bin/env python3 +# -- coding:utf-8 -- +# @Author: markushammered@gmail.com +# @Development Tool: PyCharm +# @Create Time: 2022/2/3 +# @File Name: resp_test.py + +import requests +import random + + +def request_test() -> None: + """ + 请求测试 + :return: + """ + for i in range(100): + resp = requests.get(f'http://127.0.0.1:8000/API?name={i}') + print(resp) + + +def download_test() -> None: + """ + 下载测试 + :return: + """ + + resp = requests.get('https://count.getloli.com/get/@Moe-counter.github') + with open('download_test.html', 'wb') as fp: + fp.write(resp.content) + + request_test() \ No newline at end of file diff --git a/bin/tests/stress_test.py b/bin/tests/stress_test.py index fecd0c1..a0574a7 100644 --- a/bin/tests/stress_test.py +++ b/bin/tests/stress_test.py @@ -1,13 +1,13 @@ -#!/usr/bin/env python3 -# -- coding:utf-8 -- -# @Author: markushammered@gmail.com -# @Development Tool: PyCharm -# @Create Time: 2022/2/7 -# @File Name: stress_test.py - - -import requests - - -for i in range(100): +#!/usr/bin/env python3 +# -- coding:utf-8 -- +# @Author: markushammered@gmail.com +# @Development Tool: PyCharm +# @Create Time: 2022/2/7 +# @File Name: stress_test.py + + +import requests + + +for i in range(100): print(requests.get('http://127.0.0.1:5000/API?name=89999&length=10&theme=t2').elapsed.microseconds) \ No newline at end of file diff --git a/bin/tests/timetest.py b/bin/tests/timetest.py index 3865b4c..12d7340 100644 --- a/bin/tests/timetest.py +++ b/bin/tests/timetest.py @@ -1,11 +1,11 @@ -#!/usr/bin/env python3 -# -- coding:utf-8 -- -# @Author: markushammered@gmail.com -# @Development Tool: PyCharm -# @Create Time: 2022/2/4 -# @File Name: timetest.py - -import time - - +#!/usr/bin/env python3 +# -- coding:utf-8 -- +# @Author: markushammered@gmail.com +# @Development Tool: PyCharm +# @Create Time: 2022/2/4 +# @File Name: timetest.py + +import time + + print(time.ctime()) \ No newline at end of file diff --git a/db/__init__.py b/db/__init__.py index c022d54..840fd69 100644 --- a/db/__init__.py +++ b/db/__init__.py @@ -1,6 +1,6 @@ -#!/usr/bin/env python3 -# -- coding:utf-8 -- -# @Author: markushammered@gmail.com -# @Development Tool: PyCharm -# @Create Time: 2022/2/4 -# @File Name: __init__.py.py +#!/usr/bin/env python3 +# -- coding:utf-8 -- +# @Author: markushammered@gmail.com +# @Development Tool: PyCharm +# @Create Time: 2022/2/4 +# @File Name: __init__.py.py diff --git a/db/data.db b/db/data.db index 57be2e2..a31fd28 100644 Binary files a/db/data.db and b/db/data.db differ diff --git a/db/db.py b/db/db.py index c6f234c..19aed4c 100644 --- a/db/db.py +++ b/db/db.py @@ -1,67 +1,67 @@ -#!/usr/bin/env python3 -# -- coding:utf-8 -- -# @Author: markushammered@gmail.com -# @Development Tool: PyCharm -# @Create Time: 2022/2/4 -# @File Name: db.py - -import sqlite3 - -""" -使用python3自带的Sqlite3进行数据库操作 -""" - - -def insert_data(name: str): - """ - 插入数据 - :param name: - :return: - """ - cursor.execute('insert into ReqCount values(?, ?)', (name, 1)) - conn.commit() - - -def fetch_data(name: str) -> int: - """ - 获取数据 - :param name: - :return: - """ - cursor.execute('select * from ReqCount') - conn.commit() - data = cursor.fetchall() - - # 将返回的元组转换为字典 - temp_dict = {} - for k, v in data: - temp_dict.setdefault(k, []).append(v) - # 上方代码将元组转换为字典后字典的值会变成只有一个值的列表, 用下面两行代码去除 - for i, c in zip(temp_dict.keys(), temp_dict.values()): - temp_dict[i] = c[0] - - if name in temp_dict.keys(): - count = temp_dict[name] # 获取原数字 为 整型 - update_data(name, count) - return count - else: - # 新建用户数据 - insert_data(name) - return 0 - - -def update_data(name: str, times: int): - """ - 更新数据 - :param name: - :param times: - :return: - """ - times += 1 - cursor.execute('update ReqCount set times=? where name=?', (times, name)) - conn.commit() - - -if __name__ != '__main__': - conn = sqlite3.connect('./db/data.db', check_same_thread=False) - cursor = conn.cursor() +#!/usr/bin/env python3 +# -- coding:utf-8 -- +# @Author: markushammered@gmail.com +# @Development Tool: PyCharm +# @Create Time: 2022/2/4 +# @File Name: db.py + +import sqlite3 + +""" +使用python3自带的Sqlite3进行数据库操作 +""" + + +def insert_data(name: str): + """ + 插入数据 + :param name: + :return: + """ + cursor.execute('insert into ReqCount values(?, ?)', (name, 1)) + conn.commit() + + +def fetch_data(name: str) -> int: + """ + 获取数据 + :param name: + :return: + """ + cursor.execute('select * from ReqCount') + conn.commit() + data = cursor.fetchall() + + # 将返回的元组转换为字典 + temp_dict = {} + for k, v in data: + temp_dict.setdefault(k, []).append(v) + # 上方代码将元组转换为字典后字典的值会变成只有一个值的列表, 用下面两行代码去除 + for i, c in zip(temp_dict.keys(), temp_dict.values()): + temp_dict[i] = c[0] + + if name in temp_dict.keys(): + count = temp_dict[name] # 获取原数字 为 整型 + update_data(name, count) + return count + else: + # 新建用户数据 + insert_data(name) + return 0 + + +def update_data(name: str, times: int): + """ + 更新数据 + :param name: + :param times: + :return: + """ + times += 1 + cursor.execute('update ReqCount set times=? where name=?', (times, name)) + conn.commit() + + +if __name__ != '__main__': + conn = sqlite3.connect('./db/data.db', check_same_thread=False) + cursor = conn.cursor() diff --git a/docs/LICENSE b/docs/LICENSE index 7ba1b9a..3b718db 100644 --- a/docs/LICENSE +++ b/docs/LICENSE @@ -1,201 +1,201 @@ - Apache License - Version 2.0, January 2004 - http://www.apache.org/licenses/ - - TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION - - 1. Definitions. - - "License" shall mean the terms and conditions for use, reproduction, - and distribution as defined by Sections 1 through 9 of this document. - - "Licensor" shall mean the copyright owner or entity authorized by - the copyright owner that is granting the License. - - "Legal Entity" shall mean the union of the acting entity and all - other entities that control, are controlled by, or are under common - control with that entity. For the purposes of this definition, - "control" means (i) the power, direct or indirect, to cause the - direction or management of such entity, whether by contract or - otherwise, or (ii) ownership of fifty percent (50%) or more of the - outstanding shares, or (iii) beneficial ownership of such entity. - - "You" (or "Your") shall mean an individual or Legal Entity - exercising permissions granted by this License. - - "Source" form shall mean the preferred form for making modifications, - including but not limited to software source code, documentation - source, and configuration files. - - "Object" form shall mean any form resulting from mechanical - transformation or translation of a Source form, including but - not limited to compiled object code, generated documentation, - and conversions to other media types. - - "Work" shall mean the work of authorship, whether in Source or - Object form, made available under the License, as indicated by a - copyright notice that is included in or attached to the work - (an example is provided in the Appendix below). - - "Derivative Works" shall mean any work, whether in Source or Object - form, that is based on (or derived from) the Work and for which the - editorial revisions, annotations, elaborations, or other modifications - represent, as a whole, an original work of authorship. For the purposes - of this License, Derivative Works shall not include works that remain - separable from, or merely link (or bind by name) to the interfaces of, - the Work and Derivative Works thereof. - - "Contribution" shall mean any work of authorship, including - the original version of the Work and any modifications or additions - to that Work or Derivative Works thereof, that is intentionally - submitted to Licensor for inclusion in the Work by the copyright owner - or by an individual or Legal Entity authorized to submit on behalf of - the copyright owner. For the purposes of this definition, "submitted" - means any form of electronic, verbal, or written communication sent - to the Licensor or its representatives, including but not limited to - communication on electronic mailing lists, source code control systems, - and issue tracking systems that are managed by, or on behalf of, the - Licensor for the purpose of discussing and improving the Work, but - excluding communication that is conspicuously marked or otherwise - designated in writing by the copyright owner as "Not a Contribution." - - "Contributor" shall mean Licensor and any individual or Legal Entity - on behalf of whom a Contribution has been received by Licensor and - subsequently incorporated within the Work. - - 2. Grant of Copyright License. Subject to the terms and conditions of - this License, each Contributor hereby grants to You a perpetual, - worldwide, non-exclusive, no-charge, royalty-free, irrevocable - copyright license to reproduce, prepare Derivative Works of, - publicly display, publicly perform, sublicense, and distribute the - Work and such Derivative Works in Source or Object form. - - 3. Grant of Patent License. Subject to the terms and conditions of - this License, each Contributor hereby grants to You a perpetual, - worldwide, non-exclusive, no-charge, royalty-free, irrevocable - (except as stated in this section) patent license to make, have made, - use, offer to sell, sell, import, and otherwise transfer the Work, - where such license applies only to those patent claims licensable - by such Contributor that are necessarily infringed by their - Contribution(s) alone or by combination of their Contribution(s) - with the Work to which such Contribution(s) was submitted. If You - institute patent litigation against any entity (including a - cross-claim or counterclaim in a lawsuit) alleging that the Work - or a Contribution incorporated within the Work constitutes direct - or contributory patent infringement, then any patent licenses - granted to You under this License for that Work shall terminate - as of the date such litigation is filed. - - 4. Redistribution. You may reproduce and distribute copies of the - Work or Derivative Works thereof in any medium, with or without - modifications, and in Source or Object form, provided that You - meet the following conditions: - - (a) You must give any other recipients of the Work or - Derivative Works a copy of this License; and - - (b) You must cause any modified files to carry prominent notices - stating that You changed the files; and - - (c) You must retain, in the Source form of any Derivative Works - that You distribute, all copyright, patent, trademark, and - attribution notices from the Source form of the Work, - excluding those notices that do not pertain to any part of - the Derivative Works; and - - (d) If the Work includes a "NOTICE" text file as part of its - distribution, then any Derivative Works that You distribute must - include a readable copy of the attribution notices contained - within such NOTICE file, excluding those notices that do not - pertain to any part of the Derivative Works, in at least one - of the following places: within a NOTICE text file distributed - as part of the Derivative Works; within the Source form or - documentation, if provided along with the Derivative Works; or, - within a display generated by the Derivative Works, if and - wherever such third-party notices normally appear. The contents - of the NOTICE file are for informational purposes only and - do not modify the License. You may add Your own attribution - notices within Derivative Works that You distribute, alongside - or as an addendum to the NOTICE text from the Work, provided - that such additional attribution notices cannot be construed - as modifying the License. - - You may add Your own copyright statement to Your modifications and - may provide additional or different license terms and conditions - for use, reproduction, or distribution of Your modifications, or - for any such Derivative Works as a whole, provided Your use, - reproduction, and distribution of the Work otherwise complies with - the conditions stated in this License. - - 5. Submission of Contributions. Unless You explicitly state otherwise, - any Contribution intentionally submitted for inclusion in the Work - by You to the Licensor shall be under the terms and conditions of - this License, without any additional terms or conditions. - Notwithstanding the above, nothing herein shall supersede or modify - the terms of any separate license agreement you may have executed - with Licensor regarding such Contributions. - - 6. Trademarks. This License does not grant permission to use the trade - names, trademarks, service marks, or product names of the Licensor, - except as required for reasonable and customary use in describing the - origin of the Work and reproducing the content of the NOTICE file. - - 7. Disclaimer of Warranty. Unless required by applicable law or - agreed to in writing, Licensor provides the Work (and each - Contributor provides its Contributions) on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or - implied, including, without limitation, any warranties or conditions - of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A - PARTICULAR PURPOSE. You are solely responsible for determining the - appropriateness of using or redistributing the Work and assume any - risks associated with Your exercise of permissions under this License. - - 8. Limitation of Liability. In no event and under no legal theory, - whether in tort (including negligence), contract, or otherwise, - unless required by applicable law (such as deliberate and grossly - negligent acts) or agreed to in writing, shall any Contributor be - liable to You for damages, including any direct, indirect, special, - incidental, or consequential damages of any character arising as a - result of this License or out of the use or inability to use the - Work (including but not limited to damages for loss of goodwill, - work stoppage, computer failure or malfunction, or any and all - other commercial damages or losses), even if such Contributor - has been advised of the possibility of such damages. - - 9. Accepting Warranty or Additional Liability. While redistributing - the Work or Derivative Works thereof, You may choose to offer, - and charge a fee for, acceptance of support, warranty, indemnity, - or other liability obligations and/or rights consistent with this - License. However, in accepting such obligations, You may act only - on Your own behalf and on Your sole responsibility, not on behalf - of any other Contributor, and only if You agree to indemnify, - defend, and hold each Contributor harmless for any liability - incurred by, or claims asserted against, such Contributor by reason - of your accepting any such warranty or additional liability. - - END OF TERMS AND CONDITIONS - - APPENDIX: How to apply the Apache License to your work. - - To apply the Apache License to your work, attach the following - boilerplate notice, with the fields enclosed by brackets "[]" - replaced with your own identifying information. (Don't include - the brackets!) The text should be enclosed in the appropriate - comment syntax for the file format. We also recommend that a - file or class name and description of purpose be included on the - same "printed page" as the copyright notice for easier - identification within third-party archives. - - Copyright [RTAkland] [name of copyright owner] - - Licensed under the Apache License, Version 2.0 (the "License"); - you may not use this file except in compliance with the License. - You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - - Unless required by applicable law or agreed to in writing, software - distributed under the License is distributed on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - See the License for the specific language governing permissions and + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright [RTAkland] [name of copyright owner] + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and limitations under the License. \ No newline at end of file diff --git a/docs/README.md b/docs/README.md index 0a2fb6e..9ee833f 100644 --- a/docs/README.md +++ b/docs/README.md @@ -1,162 +1,162 @@ -# 这里是Request Counter的文档 -> 虽然说项目很小根本不需要文档 - -# 灵感来源 -[Moe-Counter](https://github.com/MarkusJoe/Moe-counter) -> 看到这个项目感觉挺有意思就用Python写了一个 此项目中添加了原项目中没有的功能 `Length` `设置长度` - -# 工作原理 -使用Flask建立服务器接收请求分析获取到的数据写入数据库 - -# 部署 -> 在部署之前你需要先安装`python3.9.x`以上的版本 -## 部署到本地服务器 - ```shell - $ git clone https://github.com/MarkusJoe/RequestCounter.git - $ cd RequestCounter - $ pip3 install -r requirements.txt - $ python3 app.py - ``` - - -# 基本信息 -- Python版本: `3.9.9` -- 请求方法: `GET` `POST` -- 请求地址: `/API` -- 请求参数: `name` : `str` - - 可选参数: `length` : `int` - - 可选参数: `theme` : `str` - - -# 注意事项 -- Python版能最新版就最新版 -- 项目使用了标准库`Sqlite3`进行了数据库操作某些可以部署项目的服务器可能不支持例如`vercel`(可能是我不会) - - -# 快速响应 -测试用代码如下 -```python -import requests - -for i in range(100): - res = requests.get('http://127.0.0.1/API?name=2&length=10&theme=t2').elapsed.microseconds - print(res) # 返回响应速度 单位: 微秒 -``` ->在`AMD Athlon(tm) X4 830 Quad Core Processor 2.99 GHz` `4G` 内存的电脑上运行项目 -> 在本机上使用`Requests`库`GET`方法请求`100`次 (名称为`2`长度为`10`主题为`t2`) -> 使用`elapsed.microseconds`属性 获取响应速度返回的值如下 -
-单位: 微秒
-参考: 1秒(second)(s) = 1000毫秒(millisecond)(ms) = 1000000微秒(microseconds)(us)
-61764
-22125
-25059
-16524
-13396
-12787
-20579
-18987
-25500
-14910
-11303
-11787
-16949
-17094
-15264
-10934
-10526
-11943
-16967
-17205
-12887
-11386
-11547
-17743
-18625
-17208
-14763
-12858
-12708
-18598
-16879
-16216
-14655
-12089
-11588
-17287
-20115
-14403
-12857
-11596
-15006
-18246
-18013
-13623
-10673
-12064
-17838
-16651
-16483
-13522
-13231
-15624
-11043
-10765
-16317
-17200
-13250
-11230
-11533
-16727
-16781
-16253
-14658
-13762
-13194
-17700
-17933
-15686
-12051
-10904
-17163
-16591
-16464
-15271
-12405
-17173
-26737
-15964
-12363
-12653
-12893
-17524
-20084
-14165
-12037
-13427
-17245
-18652
-18438
-14811
-14233
-14555
-17998
-16949
-16445
-12120
-11695
-14257
-17557
-16587
-
-
- -# 关于 -## 开源 -- 本项目以Apache-2.0许可开源, 即: - - 你可以直接使用该项目提供的功能, 无需任何授权 - - 你可以在**注明来源版权信息**的情况下对源代码进行任意分发和修改以及衍生 - -## 关于此页面 -此文档由 [docsify](https://github.com/docsifyjs/docsify) 生成. docsify 是一个动态生成文档网站的工具。不同于 GitBook、Hexo 的地方是它不会生成将 .md 转成 .html 文件,所有转换工作都是在运行时进行。 - \ No newline at end of file +# 这里是Request Counter的文档 +> 虽然说项目很小根本不需要文档 + +# 灵感来源 +[Moe-Counter](https://github.com/MarkusJoe/Moe-counter) +> 看到这个项目感觉挺有意思就用Python写了一个 此项目中添加了原项目中没有的功能 `Length` `设置长度` + +# 工作原理 +使用Flask建立服务器接收请求分析获取到的数据写入数据库 + +# 部署 +> 在部署之前你需要先安装`python3.9.x`以上的版本 +## 部署到本地服务器 + ```shell + $ git clone https://github.com/MarkusJoe/RequestCounter.git + $ cd RequestCounter + $ pip3 install -r requirements.txt + $ python3 app.py + ``` + + +# 基本信息 +- Python版本: `3.9.9` +- 请求方法: `GET` `POST` +- 请求地址: `/API` +- 请求参数: `name` : `str` + - 可选参数: `length` : `int` + - 可选参数: `theme` : `str` + + +# 注意事项 +- Python版能最新版就最新版 +- 项目使用了标准库`Sqlite3`进行了数据库操作某些可以部署项目的服务器可能不支持例如`vercel`(可能是我不会) + + +# 快速响应 +测试用代码如下 +```python +import requests + +for i in range(100): + res = requests.get('http://127.0.0.1/API?name=2&length=10&theme=t2').elapsed.microseconds + print(res) # 返回响应速度 单位: 微秒 +``` +>在`AMD Athlon(tm) X4 830 Quad Core Processor 2.99 GHz` `4G` 内存的电脑上运行项目 +> 在本机上使用`Requests`库`GET`方法请求`100`次 (名称为`2`长度为`10`主题为`t2`) +> 使用`elapsed.microseconds`属性 获取响应速度返回的值如下 +
+单位: 微秒
+参考: 1秒(second)(s) = 1000毫秒(millisecond)(ms) = 1000000微秒(microseconds)(us)
+61764
+22125
+25059
+16524
+13396
+12787
+20579
+18987
+25500
+14910
+11303
+11787
+16949
+17094
+15264
+10934
+10526
+11943
+16967
+17205
+12887
+11386
+11547
+17743
+18625
+17208
+14763
+12858
+12708
+18598
+16879
+16216
+14655
+12089
+11588
+17287
+20115
+14403
+12857
+11596
+15006
+18246
+18013
+13623
+10673
+12064
+17838
+16651
+16483
+13522
+13231
+15624
+11043
+10765
+16317
+17200
+13250
+11230
+11533
+16727
+16781
+16253
+14658
+13762
+13194
+17700
+17933
+15686
+12051
+10904
+17163
+16591
+16464
+15271
+12405
+17173
+26737
+15964
+12363
+12653
+12893
+17524
+20084
+14165
+12037
+13427
+17245
+18652
+18438
+14811
+14233
+14555
+17998
+16949
+16445
+12120
+11695
+14257
+17557
+16587
+
+
+ +# 关于 +## 开源 +- 本项目以Apache-2.0许可开源, 即: + - 你可以直接使用该项目提供的功能, 无需任何授权 + - 你可以在**注明来源版权信息**的情况下对源代码进行任意分发和修改以及衍生 + +## 关于此页面 +此文档由 [docsify](https://github.com/docsifyjs/docsify) 生成. docsify 是一个动态生成文档网站的工具。不同于 GitBook、Hexo 的地方是它不会生成将 .md 转成 .html 文件,所有转换工作都是在运行时进行。 + diff --git a/docs/_coverpage.md b/docs/_coverpage.md index 48956df..3048442 100644 --- a/docs/_coverpage.md +++ b/docs/_coverpage.md @@ -1,13 +1,13 @@ -![logo](./icon.svg) - -# RequestCounter - -> Python版的计数器 - -> 使用Python Flask 库完成的访问的次数计数器 - -* 响应速度快 -* 使用Sqlite3数据库操作 - -[GitHub](https://github.com/MarkusJoe/RequestCounter.git) +![logo](./icon.svg) + +# RequestCounter + +> Python版的计数器 + +> 使用Python Flask 库完成的访问的次数计数器 + +* 响应速度快 +* 使用Sqlite3数据库操作 + +[GitHub](https://github.com/MarkusJoe/RequestCounter.git) [Get Started](#部署) \ No newline at end of file diff --git a/docs/icon.svg b/docs/icon.svg index 67aee43..c727b4c 100644 --- a/docs/icon.svg +++ b/docs/icon.svg @@ -1,10 +1,10 @@ - - arbkx-2njjk-svg - - - - - + + arbkx-2njjk-svg + + + + + \ No newline at end of file diff --git a/docs/index.html b/docs/index.html index eea2f74..0eca5c4 100644 --- a/docs/index.html +++ b/docs/index.html @@ -1,23 +1,23 @@ - - - - - Document - - - - - - -
- - - - - + + + + + Document + + + + + + +
+ + + + + diff --git a/requirements.txt b/requirements.txt index efe2d7a..e060f3d 100644 --- a/requirements.txt +++ b/requirements.txt @@ -1,3 +1,3 @@ -Flask~=2.0.2 -requests~=2.27.1 -gevent~=21.12.0 +Flask~=2.0.2 +requests~=2.27.1 +gevent~=21.12.0 diff --git a/static/index.html b/static/index.html index 960595e..4823ced 100644 --- a/static/index.html +++ b/static/index.html @@ -1,41 +1,41 @@ - - - - - Request Counter - Index - Flask - - - -
-
-
- 看到这句话就说明程序正常运行啦!! 文档 -
- 本服务使用Python-Flask开发(Flask 官方地址:Flask) -
- 调用示例: 127.0.0.1:5000/get?name=main 注: 调用支持POST 和 GET 方法请求 -
- 数字图片作者: 碎蜂 -
- 项目开源协议: Apache-2.0 即: -
- 你可以直接使用该项目提供的功能, 无需任何授权 -
- 你可以在注明来源版权信息的情况下对源代码进行任意分发和修改以及衍生 -
-
-

效果应该是这样的:

- example -
- (这只是一张图片) -
-
- + + + + + Request Counter - Index - Flask + + + +
+
+
+ 看到这句话就说明程序正常运行啦!! 文档 +
+ 本服务使用Python-Flask开发(Flask 官方地址:Flask) +
+ 调用示例: 127.0.0.1:5000/get?name=main 注: 调用支持POST 和 GET 方法请求 +
+ 数字图片作者: 碎蜂 +
+ 项目开源协议: Apache-2.0 即: +
+ 你可以直接使用该项目提供的功能, 无需任何授权 +
+ 你可以在注明来源版权信息的情况下对源代码进行任意分发和修改以及衍生 +
+
+

效果应该是这样的:

+ example +
+ (这只是一张图片) +
+
+ \ No newline at end of file diff --git a/templates/index10.html b/templates/index10.html index 457cfc7..8d6accc 100644 --- a/templates/index10.html +++ b/templates/index10.html @@ -1,16 +1,16 @@ - - - {{ title }} - - - - - - - - - - - - - + + + {{ title }} + + + + + + + + + + + + + diff --git a/templates/index7.html b/templates/index7.html index 207540d..59dafb5 100644 --- a/templates/index7.html +++ b/templates/index7.html @@ -1,13 +1,13 @@ - - - {{ title }} - - - - - - - - - - + + + {{ title }} + + + + + + + + + + diff --git a/templates/index8.html b/templates/index8.html index 9efa376..98a9fbf 100644 --- a/templates/index8.html +++ b/templates/index8.html @@ -1,14 +1,14 @@ - - - {{ title }} - - - - - - - - - - - + + + {{ title }} + + + + + + + + + + + diff --git a/templates/index9.html b/templates/index9.html index 95591d1..73caae2 100644 --- a/templates/index9.html +++ b/templates/index9.html @@ -1,15 +1,15 @@ - - - {{ title }} - - - - - - - - - - - - + + + {{ title }} + + + + + + + + + + + +