最新動態(tài)

實(shí)用Python腳本精選

2025-03-11

大家好,我是小妖,很高興在這里與大家分享實(shí)用的Python自動化腳本。無論你是編程新手還是經(jīng)驗(yàn)豐富的開發(fā)者,這些腳本都能為你提供幫助,提升你的工作效率。讓我們一起開啟高效編程之旅吧!

超級干貨,第一時間送達(dá)!

PDF 轉(zhuǎn)圖片

這個小型自動化腳本可以方便地將整個PDF頁面轉(zhuǎn)換為圖像。腳本使用了PyMuPDF模塊,該模塊以強(qiáng)大的PDF文本提取功能著稱。

# PDF to Images
# pip install PyMuPDF

import fitz

def pdf_to_images(pdf_file):
    doc = fitz.open(pdf_file)
    for page in doc:
        pix = page.get_pixmap()
        output = f"page{page.number}.png"
        pix.writePNG(output)

pdf_to_images("test.pdf")

獲取 API 數(shù)據(jù)

需要從數(shù)據(jù)庫中獲取API數(shù)據(jù)或向服務(wù)器發(fā)送請求?這個自動化腳本可以幫助你。通過Urllib3模塊,你可以輕松獲取和發(fā)布API請求。

# pip install urllib3

import urllib3

# Fetch API data
url = "https://api.github.com/users/psf/repos"
http = urllib3.PoolManager()
response = http.request('GET', url)
print(response.status)
print(response.data.decode('utf-8'))

# Post API data
url = "https://httpbin.org/post"
http = urllib3.PoolManager()
response = http.request('POST', url, fields={"hello": "world"})
print(response.status)

電池指示燈

這個方便的腳本可以讓你設(shè)置電池百分比閾值來接收通知。腳本使用了Psutil模塊來獲取電池狀態(tài),并利用Plyer模塊發(fā)送通知。

# Battery Notifier
# pip install plyer

from plyer import notification
import psutil
from time import sleep

while True:
    battery = psutil.sensors_battery()
    life = battery.percent
    if life < 50:
        notification.notify(
            title="Battery Low",
            message="Please connect to power source",
            timeout=10
        )
    sleep(60)

語法固定器

如果你厭倦了手動校對長篇文章或文本,可以嘗試這個自動化腳本。它會掃描你的文本并糾正語法錯誤。該腳本使用了HappyTransformer模塊,這是一個經(jīng)過訓(xùn)練的機(jī)器學(xué)習(xí)模塊,用于修復(fù)文本中的語法錯誤。

# Grammer Fixer
# pip install happytransformer

from happytransformer import HappyTextToText as HappyTTT
from happytransformer import TTSettings

def Grammer_Fixer(text):
    grammer = HappyTTT("T5", "prithivida/grammar_error_correcter_v1")
    config = TTSettings(do_sample=True, top_k=10, max_length=100)
    corrected = grammer.generate_text(text, args=config)
    print("Corrected Text: ", corrected.text)

text = "This is smple tet we how know this"
Grammer_Fixer(text)

拼寫修正

這個腳本能夠幫你糾正文本中的單詞拼寫錯誤。它不僅可以修復(fù)單個單詞,還能處理整段文字。

# Spell Fixer
# pip install textblob

from textblob import *

# Fixing Paragraph Spells
def fix_paragraph_words(paragraph):
    sentence = TextBlob(paragraph)
    correction = sentence.correct()
    print(correction)

# Fixing Words Spells
def fix_word_spell(word):
    word = Word(word)
    correction = word.correct()
    print(correction)

fix_paragraph_words("This is sammple tet!!")
fix_word_spell("maangoo")

互聯(lián)網(wǎng)下載器

你可能會使用下載軟件從互聯(lián)網(wǎng)上下載照片或視頻,現(xiàn)在你可以使用Python IDM模塊創(chuàng)建自己的下載器。

# Python Downloader
# pip install internetdownloadmanager

import internetdownloadmanager as idm

def Downloader(url, output):
    pydownloader = idm.Downloader(worker=20,
                                  part_size=1024*1024*10,
                                  resumable=True,)
    pydownloader.download(url, output)

Downloader("Link url", "image.jpg")
Downloader("Link url", "video.mp4")

獲取世界新聞

這個自動化腳本讓你隨時了解每日世界新聞。你可以使用任何語言從任何國家獲取新聞。該API每天免費(fèi)提供50篇新聞文章。

# World News Fetcher
# pip install requests

import requests

apiKey = "YOUR_API_KEY"
url = f"https://api.worldnewsapi.com/search-news?text=hurricane&api-key={apiKey}"
headers = {
    'Accept': 'application/json'
}

response = requests.get(url, headers=headers)
print("News: ", response.json())

PySide2 GUI

這個自動化腳本將幫助你使用PySide2模塊創(chuàng)建GUI應(yīng)用程序。它包含了創(chuàng)建現(xiàn)代應(yīng)用所需的各種組件。

# PySide 2
# pip install PySide2

from PySide6.QtWidgets import *
from PySide6.QtGui import *
import sys

app = QApplication(sys.argv)
window = QWidget()

# Resize the Window
window.resize(500, 500)

# Set the Window Title
window.setWindowTitle("PySide2 Window")

# Add Buttons
button = QPushButton("Click Me", window)
button.move(200, 200)

# Add Label Text
label = QLabel("Hello Medium", window)
label.move(200, 150)

# Add Input Box
input_box = QLineEdit(window)
input_box.move(200, 250)
print(input_box.text())

# Add Radio Buttons
radio_button = QRadioButton("Radio Button", window)
radio_button.move(200, 300)

# Add Checkbox
checkbox = QCheckBox("Checkbox", window)
checkbox.move(200, 350)

# Add Slider
slider = QSlider(window)
slider.move(200, 400)

# Add Progress Bar
progress_bar = QProgressBar(window)
progress_bar.move(200, 450)

# Add Image
image = QLabel(window)
image.setPixmap(QPixmap("image.png"))

# Add Message Box
msg = QMessageBox(window)
msg.setText("Message Box")
msg.setStandardButtons(QMessageBox.Ok | QMessageBox.Cancel)

window.show()
sys.exit(app.exec())

希望得到大家的支持和關(guān)注,感謝大家!