Here you can read past volumes of HelloGitHub Monthly by category. You are currently viewing the HelloGitHub Python collection.
Python Library for Generating Text Images. This project is a tool for converting images and videos into ASCII art, which artistically expresses image content using characters. It is easy to use, supports the transformation of images into text or ASCII style images, as well as videos into ASCII style videos, and provides multiple features such as color selection.

iCloud Photo Download Tool. This is a Python-developed tool for batch downloading iCloud photos. It offers three operational modes: copy, sync, and move, supports Live Photos, automatically deletes duplicate data, incremental downloads, and is suitable for scenarios such as iCloud photo migration and backup.
Python Library for Identifying Similar Images Based on Hash Values. This project utilizes an algorithm that differs from traditional cryptographic hash functions (such as MD5, SHA-1), as it focuses on analyzing the similarity of image content. It can generate similar hash values for images with slight differences, which is used to calculate image similarity. It supports algorithms like average hashing, perceptual hashing, and differential hashing, making it suitable for quickly identifying copyrighted images and other similar scenarios.
from PIL import Image import imagehash # 计算第一个图像的哈希值 hash = imagehash.average_hash(Image.open('tests/data/imagehash.png')) print(hash) # 哈希值:ffd7918181c9ffff # 计算第二个图像的哈希值 otherhash = imagehash.average_hash(Image.open('tests/data/peppers.png')) print(otherhash) # 哈希值:9f172786e71f1e00 # 比较两个图像哈希值是否相等 print(hash == otherhash) # False # 计算并输出哈希值的汉明距离 print(hash - otherhash) # 33 汉明距离(差异度)
Python-Powered Music Server. This is an easily scalable music server written in Python, supporting the scanning and playback of local music, and integrating multiple online streaming music services. It also allows for expansion of music sources, management interfaces, and online players through plugins.
Powerful Python Script Encryption Tool. This is a command-line tool for obfuscating Python scripts, with a single command to complete the encryption process. It offers a variety of encryption options to balance security and performance, supporting features such as binding encrypted scripts to specific machines, setting an encryption expiration date, and Themida protection.
Python Quantitative Trading Backtest Framework. This project is a backtesting library written in Python, designed specifically for the development and testing of trading strategies. It can extract data from CSV files, online data sources, and pandas, supporting the synchronous operation of multiple strategies, and generating visualizations for trading strategies. It includes over 100 indicators, including trend, volume, and volatility indicators.
from datetime import datetime import backtrader as bt class SmaCross(bt.SignalStrategy): def __init__(self): sma1, sma2 = bt.ind.SMA(period=10), bt.ind.SMA(period=30) crossover = bt.ind.CrossOver(sma1, sma2) self.signal_add(bt.SIGNAL_LONG, crossover) cerebro = bt.Cerebro() cerebro.addstrategy(SmaCross) data0 = bt.feeds.YahooFinanceData(dataname='MSFT', fromdate=datetime(2011, 1, 1), todate=datetime(2012, 12, 31)) cerebro.adddata(data0) cerebro.run() cerebro.plot()

Open-source Smart Home Platform. This is an open-source smart home platform written in Python, which aims to integrate various smart devices from different brands to provide a personalized home automation experience. It addresses the poor interoperability problems of traditional systems, allowing users to freely control and link devices like Apple HomeKit, Mi Home, Aqara, TuYa, and more on the same platform, greatly enhancing the flexibility and convenience of smart homes. It is suitable for users who want to break the single-platform limitations, especially DIY smart home enthusiasts who pursue high cost-performance.

Paper Document Digitalization Archive Tool. This is a document management system based on Django that can convert paper documents into searchable online archives. Unlike ordinary scanners that turn physical books into images or PDF formats that are difficult to retrieve, it achieves digitization through document scanners and is transformed into a format that is easy to search.

A Tool for Rapidly Generating Python Project Dependency Files. This project can generate a requirements.txt file based on the import statements within a Python project. It is capable of automatically identifying libraries used in the project and generating a list of dependencies without needing any installation.