Pytools: Some useful tools written by pure python.
<div align="center">
  <img src="./docs/logo.png" width="600"/>
</div>
<br />

[![docs](https://img.shields.io/badge/docs-latest-blue)](https://pikachupytools.readthedocs.io/zh/latest/)
[![PyPI - Python Version](https://img.shields.io/pypi/pyversions/pikachupytools)](https://pypi.org/project/pikachupytools/)
[![PyPI](https://img.shields.io/pypi/v/pikachupytools)](https://pypi.org/project/pikachupytools)
[![license](https://img.shields.io/github/license/CharlesPikachu/pytools.svg)](https://github.com/CharlesPikachu/pytools/blob/master/LICENSE)
[![PyPI - Downloads](https://pepy.tech/badge/pikachupytools)](https://pypi.org/project/pikachupytools/)
[![PyPI - Downloads](https://img.shields.io/pypi/dm/pikachupytools?style=flat-square)](https://pypi.org/project/pikachupytools/)
[![issue resolution](https://isitmaintained.com/badge/resolution/CharlesPikachu/pytools.svg)](https://github.com/CharlesPikachu/pytools/issues)
[![open issues](https://isitmaintained.com/badge/open/CharlesPikachu/pytools.svg)](https://github.com/CharlesPikachu/pytools/issues)

Documents: https://pikachupytools.readthedocs.io/zh/latest/


# Pytools
```
Some useful tools written by pure python.
You can star this repository to keep track of the project if it's helpful for you, thank you for your support.
```


# Support List
|   Name_EN                            |     Introduction                                                  |      Core Code                                            |     Name_CN                       |
|   :----:                             |     :----:                                                        |      :----:                                               |     :----:                        |
|   portscanner                        |     [click](https://mp.weixin.qq.com/s/98VnIO9JEdAqcIPdxq1cOg)    |      [click](./pytools/modules/portscanner)               |     简易端口扫描器                |
|   timer                              |     [click](https://mp.weixin.qq.com/s/8HcXQjcsyegYzp_yt1cE5w)    |      [click](./pytools/modules/timer)                     |     简易计时器                    |
|   emailsecurity                      |     [click](https://mp.weixin.qq.com/s/9u1CIa8MdoiXGGdPqae8fA)    |      [click](./pytools/modules/emailsecurity)             |     邮箱安全性验证工具            |
|   calculator                         |     [click](https://mp.weixin.qq.com/s/x6ygDEWHiYX10AP4y8e3MA)    |      [click](./pytools/modules/calculator)                |     简易计算器                    |
|   iplocationquery                    |     [click](https://mp.weixin.qq.com/s/lYWxt00erojeSoyRWA1R5g)    |      [click](./pytools/modules/iplocationquery)           |     根据IP地址查询地理信息小工具  |
|   clock                              |     [click](https://mp.weixin.qq.com/s/8JPxEHGZ2u7dsEUJS-9WbQ)    |      [click](./pytools/modules/clock)                     |     简易时钟                      |
|   inquiryexpress                     |     [click](https://mp.weixin.qq.com/s/haNR8Yr9RsSXaTd0jl5PFA)    |      [click](./pytools/modules/inquiryexpress)            |     快递查询系统                  |
|   qrcodegenerator                    |     [click](https://mp.weixin.qq.com/s/XFmumQbQP4d9qf6HQBLVnA)    |      [click](./pytools/modules/qrcodegenerator)           |     二维码生成器                  |
|   musicplayer                        |     [click](https://mp.weixin.qq.com/s/SUyRNz_M7B6bcdV7-YxlZQ)    |      [click](./pytools/modules/musicplayer)               |     音乐播放器                    |
|   luxunsentencesquery                |     [click](https://mp.weixin.qq.com/s/dQ8NfwFDoZw-6c1SPEl0aw)    |      [click](./pytools/modules/luxunsentencesquery)       |     鲁迅名言查询系统              |
|   runcat                             |     [click](https://mp.weixin.qq.com/s/8Fgzb8JiAoNSJqUanSi85Q)    |      [click](./pytools/modules/runcat)                    |     奔跑的猫                      |
|   newyearcardgenerator               |     [click](https://mp.weixin.qq.com/s/XCPkiXrKGZrVpNvyRlzgvA)    |      [click](./pytools/modules/newyearcardgenerator)      |     新年贺卡生成器                |
|   naughtyconfession                  |     [click](https://mp.weixin.qq.com/s/wMxMrx07ZeOfYEXpuGYVsg)    |      [click](./pytools/modules/naughtyconfession)         |     仿抖音表白神器                |
|   succulentquery                     |     [click](https://mp.weixin.qq.com/s/1_PzYVkMXwXrCiHBP5nZtQ)    |      [click](./pytools/modules/succulentquery)            |     多肉数据查询系统              | 
|   artsigngenerator                   |     [click](https://mp.weixin.qq.com/s/CYxAgJZdEc87XIRcqWgRqw)    |      [click](./pytools/modules/artsigngenerator)          |     艺术签名生成器                | 
|   genderpredictor                    |     [click](https://mp.weixin.qq.com/s/NS3DfRpIfw5wFsV3EaqEzQ)    |      [click](./pytools/modules/genderpredictor)           |     给定中文名的性别猜测器        |
|   idiomsolitaire                     |     [click](https://mp.weixin.qq.com/s/ncgl2OBUZsE77gOy1gclYg)    |      [click](./pytools/modules/idiomsolitaire)            |     成语接龙小软件                |
|   trumptweetsgenerator               |     [click](https://mp.weixin.qq.com/s/KO_nWpejIqQNKZgbCBfWEQ)    |      [click](./pytools/modules/trumptweetsgenerator)      |     特朗普推特生成器              |
|   idcardquery                        |     [click](https://mp.weixin.qq.com/s/2zljIGm-5WlRCq68ADXSiw)    |      [click](./pytools/modules/idcardquery)               |     身份证信息查询工具            |
|   videoplayer                        |     [click](https://mp.weixin.qq.com/s/pG6SwhfNSWZuHxuMcEQZog)    |      [click](./pytools/modules/videoplayer)               |     视频播放器                    |
|   coupletgenerator                   |     [click](https://mp.weixin.qq.com/s/L1gmiMJ-M8T-QgSeJckYEw)    |      [click](./pytools/modules/coupletgenerator)          |     春联生成器                    |
|   translator                         |     [click](https://mp.weixin.qq.com/s/SWR-bUdqfpn3NxR5OgCYlg)    |      [click](./pytools/modules/translator)                |     翻译软件                      |
|   desktoppet                         |     [click](https://mp.weixin.qq.com/s/4kOzdRXmrxzR88QcYYSFvQ)    |      [click](./pytools/modules/desktoppet)                |     桌面宠物                      |
|   computersinger                     |     [click](https://mp.weixin.qq.com/s/-yT1NxAUTN8hzZs76qzqjQ)    |      [click](./pytools/modules/computersinger)            |     让电脑主板上的蜂鸣器哼歌      |
|   hubbleseeonbirthday                |     [click](https://mp.weixin.qq.com/s/hJDcRHNHT1Zc0akctvWqsA)    |      [click](./pytools/modules/hubbleseeonbirthday)       |     你生日那天的宇宙              |
|   earthwallpaper                     |     [click](https://mp.weixin.qq.com/s/pDZpzzpd1g5bodtFdEROEg)    |      [click](./pytools/modules/earthwallpaper)            |     动态更新地球壁纸              |
|   moviehelper                        |     [click](https://mp.weixin.qq.com/s/VlwCyD99YBYhIbwG4rYN3A)    |      [click](./pytools/modules/moviehelper)               |     电影小助手                    |
|   controlpcbyemail                   |     [click](https://mp.weixin.qq.com/s/KnG-mncegaB35v5THAUJXQ)    |      [click](./pytools/modules/controlpcbyemail)          |     邮件控制电脑                  |
|   playfireworks                      |     [click](https://mp.weixin.qq.com/s/wzz_7gKIt7iU-7kM_9o_pw)    |      [click](./pytools/modules/playfireworks)             |     放烟花特效                    |
|   arxivhelper                        |     [click](https://mp.weixin.qq.com/s/XypPxlWmzbRoEEEhusEXJA)    |      [click](./pytools/modules/arxivhelper)               |     Arxiv小助手                   |
|   ukrainemap                         |     [click](https://mp.weixin.qq.com/s/zthIMtWqF7mJiIlXy1-bsA)    |      [click](./pytools/modules/ukrainemap)                |     乌克兰地图查询系统            |
|   sovietgenerator                    |     [click](https://mp.weixin.qq.com/s/PUTJxDLpCVRSaUzvarizEQ)    |      [click](./pytools/modules/sovietgenerator)           |     苏联笑话生成器                |
|   goodgoodgenerator                  |     [click](https://mp.weixin.qq.com/s/mH9LyIdHe1uX2E3oAjlIoQ)    |      [click](./pytools/modules/goodgoodgenerator)         |     稳中向好生成器                |
|   tianyancha                         |     [click](https://mp.weixin.qq.com/s/IpaOCq1600JyIf9QWieoTQ)    |      [click](./pytools/modules/tianyancha)                |     天眼查                        |
|   decryptbrowser                     |     [click](https://mp.weixin.qq.com/s/sotiVBWrFxcyYAgdRJ5ydA)    |      [click](./pytools/modules/decryptbrowser)            |     盗取浏览器里的账号密码        |
|   githubacceleration                 |     [click](https://mp.weixin.qq.com/s/OEWi5y_AbM1jE526LCp4aw)    |      [click](./pytools/modules/githubacceleration)        |     国内访问Github一键加速脚本    |
|   modifyfoldericon                   |     [click](https://mp.weixin.qq.com/s/40QlSkwQ-ezpeDiPWlkUAg)    |      [click](./pytools/modules/modifyfoldericon)          |     文件夹图标批量修改            |
|   sheepsheep                         |     [click](https://mp.weixin.qq.com/s/Kj0s67IaNzU9s0ywAmNayg)    |      [click](./pytools/modules/sheepsheep)                |     "羊了个羊"小助手              |


# Install

#### Preparation
- [Nodejs](https://nodejs.org/en/): Since some of the tools depend on nodejs, e.g., translator, you should install the latest Nodejs if you want to use those tools.
- [LAV Filters](http://files.1f0.de/lavf/LAVFilters-0.65.exe): If you want to use musicplayer or videoplayer in Windows, you have to install the decoder of DirectShow, such as LAV Filters.

#### Pip install
```
run "pip install pikachupytools"
```

#### Source code install
```sh
(1) Offline
Step1: git clone https://github.com/CharlesPikachu/pytools.git
Step2: cd pytools -> run "python setup.py install"
(2) Online
run "pip install git+https://github.com/CharlesPikachu/pytools.git@master"
```


# Quick Start
```python
import random
from pytools import pytools

tool_client = pytools.pytools()
all_supports = tool_client.getallsupported()
tool_client.execute(random.choice(list(all_supports.values())))
```


# Screenshot
![img](./docs/screenshot.gif)


# Projects in Charles_pikachu
- [Games](https://github.com/CharlesPikachu/Games): Create interesting games by pure python.
- [DecryptLogin](https://github.com/CharlesPikachu/DecryptLogin): APIs for loginning some websites by using requests.
- [Musicdl](https://github.com/CharlesPikachu/musicdl): A lightweight music downloader written by pure python.
- [Videodl](https://github.com/CharlesPikachu/videodl): A lightweight video downloader written by pure python.
- [Pytools](https://github.com/CharlesPikachu/pytools): Some useful tools written by pure python.
- [PikachuWeChat](https://github.com/CharlesPikachu/pikachuwechat): Play WeChat with itchat-uos.
- [Pydrawing](https://github.com/CharlesPikachu/pydrawing): Beautify your image or video.
- [ImageCompressor](https://github.com/CharlesPikachu/imagecompressor): Image compressors written by pure python.
- [FreeProxy](https://github.com/CharlesPikachu/freeproxy): Collecting free proxies from internet.
- [Paperdl](https://github.com/CharlesPikachu/paperdl): Search and download paper from specific websites.
- [Sciogovterminal](https://github.com/CharlesPikachu/sciogovterminal): Browse "The State Council Information Office of the People's Republic of China" in the terminal.
- [CodeFree](https://github.com/CharlesPikachu/codefree): Make no code a reality.
- [DeepLearningToys](https://github.com/CharlesPikachu/deeplearningtoys): Some deep learning toys implemented in pytorch.
- [DataAnalysis](https://github.com/CharlesPikachu/dataanalysis): Some data analysis projects in charles_pikachu.
- [Imagedl](https://github.com/CharlesPikachu/imagedl): Search and download images from specific websites.
- [Pytoydl](https://github.com/CharlesPikachu/pytoydl): A toy deep learning framework built upon numpy.
- [NovelDL](https://github.com/CharlesPikachu/noveldl): Search and download novels from some specific websites.


# More
#### WeChat Official Accounts
*Charles_pikachu*  
![img](./docs/pikachu.jpg)