preface
10 wonderful Python libraries, I was stunned after reading!
Let's start happily~
development tool
Python version: 3.6.4
Related modules:
socket module;
textblob module;
pygame module;
pyqrcode module;
pyshorteners module;
Google trans module;
pendulum module;
fabulous module;
pywebview module;
Environment construction
Install Python and add it to the environment variable. pip can install the relevant modules required.
Speedtest (network speed test)
The Speedtest module can test the network bandwidth of the computer.
Use Baidu source installation library.
# Install speedtest pip install speedtest -i https://mirror.baidu.com/pypi/simple/ Copy code
When using, you need to cancel certificate verification
import speedtest # Global cancel certificate validation import ssl ssl._create_default_https_context = ssl._create_unverified_context\ test = speedtest.Speedtest() down = test.download() upload = test.upload() print(f"Upload speed:{round(upload/(1024 * 1024),2)} Mbps")\ print(f"Download speed:{round(down/(1024 * 1024),2)} Mbps") Copy code
The results are as follows
Upload speed: 31.3 Mbps Download speed: 86.34 Mbps Copy code
Socket (get local ip address)
Using socket, first obtain the host name of the computer, and then obtain the IP address of the computer.
socket is Python's built-in standard library, which does not need to be installed.
import socket as f hostn = f.gethostname() Laptop = f.gethostbyname(hostn) print("Your computer is local IP the address is:" + Laptop) Copy code
The results are as follows. This IP is the IP in the LAN.
Your computer is local IP The address is: 192.168.2.101 Copy code
If you want to get the public IP address of the computer, you can use some third-party websites, such as the following.
# Browser access, return public IP address https://jsonip.com Copy code
The code is as follows. Also cancel certificate verification.
import json from urllib.request import urlopen # Global cancel certificate validation import ssl ssl._create_default_https_context = ssl._create_unverified_context with urlopen(r'https://jsonip.com') as fp: content = fp.read().decode() ip = json.loads(content)['ip'] print("Your computer public network IP the address is:" + ip) Copy code
Initiate a request for the website and parse the returned results.
Finally, the public IP address is successfully obtained.
# Here's a random one~ Your computer public network IP The address is: 120.236.128.201 Copy code
Textblob (text processing)
TextBlob is a Python library for processing text data, which is only used for English analysis.
Chinese can use SnowNLP, which can easily process Chinese text content. It is inspired by TextBlob.
Now let's do a spell check for English.
from textblob import TextBlob a = TextBlob("I dream about workin with goof company") a = a.correct() print(a) Copy code
give the result as follows
I dream about working with good company Copy code
You can see that the words in the sentence have been corrected.
PyGame (making games)
pygame, a Python library for making games.
It not only provides developers with graphics and sound libraries for making games, but also uses built-in modules to realize complex game logic.
Let's use pygame to make a small music player
from pygame import mixer import pygame import sys pygame.display.set_mode([300, 300]) music = "my_dream.mp3" mixer.init() mixer.music.load(music) mixer.music.play() # click × Code that can close the interface while 1: for event in pygame.event.get(): if event.type == pygame.QUIT: sys.exit() Copy code
Pyqrcode (generate QR code)
QR code is abbreviated as QR Code(Quick Response Code), which is scientifically called quick response matrix code. It is a kind of two-dimensional bar code. It was invented by Denso Wave company in Japan in 1994.
Now, with the popularity of smart phones, they have been widely used in daily life, such as commodity information query, social friend interaction, network address access and so on.
pyqrcode module is a QR code generator, which is simple to use and written in pure python.
Installation.
# Install pyqrcode pip install pyqrcode -i https://mirror.baidu.com/pypi/simple/ Copy code
Next, baidu click will generate a QR code
import pyqrcode import png from pyqrcode import QRCode inpStr = "www.baidu.com" qrc = pyqrcode.create(inpStr) qrc.png("baidu.png", scale=6) Copy code
Short URLs
Python shorteners is a simple Python library for URL shortening.
18 short chain root domain names are provided for use.
# Install pyshorteners\ pip install pyshorteners -i https://mirror.baidu.com/pypi/simple/ Copy code
With Clck Ru format as an example
import pyshorteners as psn url = "http://www.shuhai.com/" u = psn.Shortener().clckru.short(url) print(u) Copy code
The results are as follows
# result https://clck.ru/WPJgg Copy code
Google trans (translation)
Google Trans is a free and unlimited Python Translation Library, which can be used to automatically detect language types, translations and so on.
Install version 3.1.0a0. The latest version cannot be used.
# Install Google trans pip install googletrans==3.1.0a0 -i https://mirror.baidu.com/pypi/simple/ Copy code
View all supported languages.
import googletrans from googletrans import Translator print(googletrans.LANGUAGES) Copy code
The results are as follows. There are two kinds of Chinese, simplified and traditional.
LANGUAGES = { 'af': 'afrikaans', 'sq': 'albanian', 'am': 'amharic', 'ar': 'arabic', 'hy': 'armenian', 'az': 'azerbaijani', 'eu': 'basque', 'be': 'belarusian', 'bn': 'bengali', 'bs': 'bosnian', 'bg': 'bulgarian', 'ca': 'catalan', 'ceb': 'cebuano', 'ny': 'chichewa', 'zh-cn': 'chinese (simplified)', 'zh-tw': 'chinese (traditional)', 'co': 'corsican', 'hr': 'croatian', 'cs': 'czech', 'da': 'danish', 'nl': 'dutch', 'en': 'english', 'eo': 'esperanto', 'et': 'estonian', 'tl': 'filipino', 'fi': 'finnish', 'fr': 'french', 'fy': 'frisian', 'gl': 'galician', 'ka': 'georgian', 'de': 'german', 'el': 'greek', 'gu': 'gujarati', 'ht': 'haitian creole', 'ha': 'hausa', 'haw': 'hawaiian', 'iw': 'hebrew', 'he': 'hebrew', 'hi': 'hindi', 'hmn': 'hmong', 'hu': 'hungarian', 'is': 'icelandic', 'ig': 'igbo', 'id': 'indonesian', 'ga': 'irish', 'it': 'italian', 'ja': 'japanese', 'jw': 'javanese', 'kn': 'kannada', 'kk': 'kazakh', 'km': 'khmer', 'ko': 'korean', 'ku': 'kurdish (kurmanji)', 'ky': 'kyrgyz', 'lo': 'lao', 'la': 'latin', 'lv': 'latvian', 'lt': 'lithuanian', 'lb': 'luxembourgish', 'mk': 'macedonian', 'mg': 'malagasy', 'ms': 'malay', 'ml': 'malayalam', 'mt': 'maltese', 'mi': 'maori', 'mr': 'marathi', 'mn': 'mongolian', 'my': 'myanmar (burmese)', 'ne': 'nepali', 'no': 'norwegian', 'or': 'odia', 'ps': 'pashto', 'fa': 'persian', 'pl': 'polish', 'pt': 'portuguese', 'pa': 'punjabi', 'ro': 'romanian', 'ru': 'russian', 'sm': 'samoan', 'gd': 'scots gaelic', 'sr': 'serbian', 'st': 'sesotho', 'sn': 'shona', 'sd': 'sindhi', 'si': 'sinhala', 'sk': 'slovak', 'sl': 'slovenian', 'so': 'somali', 'es': 'spanish', 'su': 'sundanese', 'sw': 'swahili', 'sv': 'swedish', 'tg': 'tajik', 'ta': 'tamil', 'te': 'telugu', 'th': 'thai', 'tr': 'turkish', 'uk': 'ukrainian', 'ur': 'urdu', 'ug': 'uyghur', 'uz': 'uzbek', 'vi': 'vietnamese', 'cy': 'welsh', 'xh': 'xhosa', 'yi': 'yiddish', 'yo': 'yoruba', 'zu': 'zulu', } Copy code
translater = Translator() out = translater.translate("Hello", dest='en', src='auto') print(out) Copy code
Hello
give the result as follows
# Translation results Translated(src=zh-CN, dest=en, text=Hello, pronunciation=None, extra_data="{'translat...") Copy code
src: the language of the source text
dest: the language that converts the source text to.
text: translation results
Pendulum (time)
Pendulum is a Python library dealing with dates and times, which is very useful when it comes to time zones.
Installation.
# Installing pendulum pip install pendulum -i https://mirror.baidu.com/pypi/simple/ Copy code
Look at the time two minutes ago.
import pendulum past = pendulum.now().subtract(minutes=2) print(past.diff_for_humans()) print(past) Copy code
give the result as follows
2 minutes ago 2021-07-25T19:10:09.222953+08:00 Copy code
Fabulous (add text color)
If you are running a Python program on the command line, the output is the same color, which is inconvenient to observe
With Fabulous, you can add images and colored text to highlight the output
Installation.
# Install fabulous pip install fabulous -i https://mirror.baidu.com/pypi/simple/ Copy code
Let's take a look at an example!
from fabulous.color import bold, magenta, highlight_red print(bold(magenta( """ hello world this is some new line and here is the last line. :) """ ))) Copy code
The result is as follows: the output font is bold and colored
pywebview(GUI browser)
pywebview is a Python library for displaying HTML, CSS, and JavaScript content in GUI form.
This means that with this library, you can display web pages in desktop applications.
install
# Install pywebview pip install pywebview -i https://mirror.baidu.com/pypi/simple/ Copy code
Start a window of a given website and run the following code
import webview window = webview.create_window( title='use Baidu Search,It's all advertising', url='http://www.baidu.com', width=850, height=600, resizable=False, # Fixed window size text_select=False, # Prohibit selection of text content confirm_close=True # Prompt when closing ) webview.start() Copy code
give the result as follows