成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

20 個 Python 非常實用的自動化腳本

開發 前端
如果你都掌握了,相信你的同事將會對你印象深刻、將那些看似不可自動化的事情自動化完成,并解決你甚至不知道的問題。

假設你已經用 Python 編碼一段時間了,并且在編碼方面非常自信,但我還是建議你認真閱讀下本次推文。

這里有 20 個 Python 腳本,如果你都掌握了,相信你的同事將會對你印象深刻、將那些看似不可自動化的事情自動化完成,并解決你甚至不知道的問題。

1. 文件重復查找器

是否曾經查看過硬盤并想知道,為什么我只剩下 100MB?有一種非常討厭的事情就是文件重復。以下是查找重復文件和刪除它們的腳本:

import os
import hashlib

def hash_file(filename):
    h = hashlib.md5()
    with open(filename, 'rb') as file:
        while chunk := file.read(8192):
            h.update(chunk)
    return h.hexdigest()

def find_duplicates(folder):
    hashes = {}
    for dirpath, _, filenames in os.walk(folder):
        for f in filenames:
            full_path = os.path.join(dirpath, f)
            file_hash = hash_file(full_path)
            if file_hash in hashes:
                print(f"Duplicate found: {full_path} == {hashes[file_hash]}")
            else:
                hashes[file_hash] = full_path

find_duplicates('/path/to/your/folder')

ps:主要不要在系統文件夾上盲目運行此操作。

我曾經在舊項目文件夾上運行這個程序后,在不到 10 分鐘的時間內釋放了 10GB 的空間。

2. 自動整理下載文件夾

我們基本不會認真整理下載文件夾內的內容,下面是一個可以整齊地組織所有內容的腳本:

import os
import shutil

def organize_folder(folder):
    file_types = {
        'Images': ['.jpeg', '.jpg', '.png', '.gif'],
        'Videos': ['.mp4', '.avi', '.mov'],
        'Documents': ['.pdf', '.docx', '.txt'],
        'Archives': ['.zip', '.rar']
    }

    for filename in os.listdir(folder):
        file_path = os.path.join(folder, filename)
        if os.path.isfile(file_path):
            ext = os.path.splitext(filename)[1].lower()
            for folder_name, extensions in file_types.items():
                if ext in extensions:
                    target_folder = os.path.join(folder, folder_name)
                    os.makedirs(target_folder, exist_ok=True)
                    shutil.move(file_path, os.path.join(target_folder, filename))
                    print(f'Moved {filename} to {folder_name}')

organize_folder('/path/to/Downloads')

相信你也一樣,根本沒有時間手動組織文件,那就用起來吧。

3. 批量圖像調整器

正在處理需要調整圖像大小的項目?下面介紹如何輕松批量調整圖像大小:

from PIL import Image
import os

def batch_resize(folder, width, height):
    for filename in os.listdir(folder):
        if filename.endswith(('.jpeg', '.jpg', '.png')):
            優勢 = Image.open(os.path.join(folder, filename))
            優勢 = 優勢.resize((width, height))
            優勢.save(os.path.join(folder, f"resized_{filename}"))
            print(f'Resized {filename}')

batch_resize('/path/to/images', 800, 600)

當你的領導想要 “在 5 分鐘內裁剪并調整這些圖像的大小” 時,這非常適合。

4. 實時天氣通知

每小時獲取實時天氣更新,再也不會忘記帶傘:

import requests
import time

API_KEY = 'your_api_key'
CITY = 'New York'

def get_weather():
    url = f"http://api.openweathermap.org/data/2.5/weather?q={CITY}&appid={API_KEY}"
    response = requests.get(url)
    data = response.json()
    return data['weather'][0]['description'], data['main']['temp'] - 273.15

while True:
    weather, temp = get_weather()
    print(f"Current weather in {CITY}: {weather}, {temp:.2f}°C")
    time.sleep(3600)  # Run every hour

雖然天氣app使用起來也比較方便,但這也是一種裝x的方式,哈哈哈。

5. 發送電子郵件

如果你對某個特定的博客網站很著迷,但又不想經常檢查它,這里有一個 Python 腳本,它可以將最新的reddit 帖子直接發送到你的收件箱:

import smtplib
import requests

def send_email(subject, body):
    from_addr = 'your_email@example.com'
    to_addr = 'your_email@example.com'
    msg = f"Subject: {subject}\n\n{body}"
    with smtplib.SMTP('smtp.gmail.com', 587) as server:
        server.starttls()
        server.login('your_email@example.com', 'your_password')
        server.sendmail(from_addr, to_addr, msg)

def get_reddit_posts(subreddit):
    url = f"https://www.reddit.com/r/{subreddit}/new.json"
    headers = {'User-agent': 'Mozilla/5.0'}
    response = requests.get(url, headers=headers)
    data = response.json()
    return [post['data']['title'] for post in data['data']['children']]

posts = get_reddit_posts('python')
send_email('Latest Reddit Posts', '\n'.join(posts))

自動化可以節省大量時間。

6. 將任何網頁轉換為電子書

此腳本將您最喜歡的文章轉換成電子書格式,非常適合離線閱讀:

import requests
from bs4 import BeautifulSoup
from ebooklib import epub

def create_ebook(url, book_title):
    response = requests.get(url)
    soup = BeautifulSoup(response.content, 'html.parser')
    
    book = epub.EpubBook()
    book.set_title(book_title)
    
    chapter = epub.EpubHtml(title='Chapter 1', file_name='chap_01.xhtml')
    chapter.content = soup.prettify()
    book.add_item(chapter)
    
    book.spine = ['nav', chapter]
    epub.write_epub(f'{book_title}.epub', book, {})

create_ebook('https://example.com/your-favorite-article', 'My eBook')

7. 將文本轉換為語音

聽書比看書來得輕松,此腳本可將文本轉換為語音:

import pyttsx3

def text_to_speech(text):
    engine = pyttsx3.init()
    engine.say(text)
    engine.runAndWait()

text_to_speech('Hello World, Python is amazing!')

Ps:這個技術恐怕只能拿來炫技,使用它來發現錯誤或者只是讓自己在閱讀時休息一下,不是非常實用。

8. 檢查網站可用性

想知道你的網站是否癱瘓?這里有一個簡單的腳本可以幫你檢查:

import requests

def is_website_online(url):
    try:
        response = requests.get(url)
        return response.status_code == 200
    except:
        return False

print(is_website_online('https://example.com'))

如果你自建了一個網站,有一天當你醒來發現你的網站已癱瘓 4 個小時時,這個時候就會發現這個代碼的好處了。

9. 跟蹤加密貨幣價格

使用此腳本跟蹤你最喜歡的加密貨幣價格:

import requests

def get_crypto_price(crypto):
    url = f"https://api.coindesk.com/v1/bpi/currentprice/{crypto}.json"
    response = requests.get(url)
    data = response.json()
    return data['bpi']['USD']['rate']

print(get_crypto_price('BTC'))

10.下載完成后關閉電腦

再也不用等著下載完畢在關電腦了。讓你的計算機自行處理。此腳本會在下載完成后關閉 PC:

import os
import time

def check_downloads():
    while True:
        if not os.listdir('/path/to/downloads'):
            print("Shutting down...")
            os.system("shutdown /s /t 1")
        time.sleep(60)

check_downloads()

11. 使用密碼保護你的腳本

這里有一個有趣的例子:用密碼保護你的腳本,這樣就沒有人可以在未經許可的情況下運行它們:

import getpass

password = getpass.getpass('Enter your password: ')
if password != 'secret':
    print('Access Denied')
    exit()
else:
    print('Access Granted')
    # Your protected code here

Ps:將其與加密方法結合,可獲得雙重保護。

12. 監控計算機的 CPU 使用情況

留意 CPU 溫度和使用情況:

import psutil

def monitor_cpu():
    print(f"CPU usage: {psutil.cpu_percent()}%")
    print(f"Memory usage: {psutil.virtual_memory().percent}%")

monitor_cpu()

因為CPU過熱絕對不是什么好事。當然,也有專門應用可以直接使用,但作為編程大佬的你,直接上代碼不是很酷么!

13. 將 PDF 轉換為文本

如果你經常處理 PDF,此腳本將為提取文本提供一些思路:

import PyPDF2

def pdf_to_text(pdf_file):
    reader = PyPDF2.PdfReader(pdf_file)
    text = ''
    for page in reader.pages:
        text += page.extract_text()
    return text

print(pdf_to_text('example.pdf'))

現在你可以輕松提取關鍵信息,而無需無休止地復制粘貼。

14. 生成二維碼

為任何 URL 或文本創建二維碼:

import qrcode

def generate_qr(text, filename):
    code = qrcode.make(text)
    code.save(f"{filename}.png")

generate_qr('https://example.com', 'my_qr_code')

誰知道二維碼可以這么簡單?

15. 下載 YouTube 視頻

在幾秒鐘內下載您喜愛的 YouTube 視頻:

import yt_dlp

def download_video(url):
    # yt-dlp 的選項
    ydl_opts = { 
        'format' : 'best' ,   # 下載最佳可用質量
        'outtmpl' : '%(title)s.%(ext)s' ,   # 將文件名設置為視頻標題
        'noplaylist' : True ,   # 如果 URL 是播放列表的一部分,則下載單個視頻
        'quiet' : False ,   # 在控制臺中顯示下載進度
        'ignoreerrors' : True ,   # 即使遇到錯誤也繼續
        'no_warnings' : True ,   # 抑制警告
    } 
    try : 
        # 使用 yt-dlp 下載視頻
        with yt_dlp.YoutubeDL(ydl_opts) as ydl: 
            ydl.download([url]) 
        print ( "下載已成功完成。" ) 
    except Exception as e: 
        print ( f"發生錯誤:{e}" ) 

# 用所需的 YouTube 視頻 URL 替換
download_video('https://www.youtube.com/watch?v=_v7ksOgFn-w' )

請記住,負責任地下載!

16. 創建隨機強密碼

使用此腳本生成強隨機密碼:

import string
import random

def generate_password(length):
    chars = string.ascii_letters + string.digits + string.punctuation
    return ''.join(random.choice(chars) for _ in range(length))

print(generate_password(16))

再也不用為想個密碼而頭疼了。

17. 獲取實時股票價格

使用此快速腳本跟蹤實時股票價格:

import requests

def get_stock_price(symbol):
    url = f"https://finnhub.io/api/v1/quote?symbol={symbol}&token=your_api_key"
    response = requests.get(url)
    data = response.json()
    return data['c']

print(get_stock_price('AAPL'))

實現了邊寫代碼,邊炒股了!

18. 創建一個簡單的聊天機器人

制作自己的聊天機器人:

import random

def chatbot():
    responses = ['Hello!', 'How can I help you?', 'Goodbye!']
    while True:
        user_input = input("You: ")
        if user_input.lower() == 'bye':
            print("Chatbot: Goodbye!")
            break
        print(f"Chatbot: {random.choice(responses)}")

chatbot()

你的個人助理,僅需幾行代碼即可創建。當然,你也可以通過部署一個大語言模型為驅動,部署你的智能聊天機器人,只要你有足夠的顯卡資源。

19. 用計步器跟蹤每日步數

除了使用手表跟蹤步數,作為一編程大佬,我們還可以使用 Python 獲取步數:

import fitbit

def get_daily_steps(token):
    client = fitbit.Fitbit('client_id', 'client_secret', oauth2_token=token)
    steps = client.activities()['summary']['steps']
    return steps

print(f"Steps today: {get_daily_steps('your_token')}")

Python 除了不能幫你生孩子,真實無所不能!

20. 創建待辦事項清單

一個簡單的待辦事項清單,因為我們的生活都需要一些秩序:

import json

def add_task(task):
    with open('todo.json', 'r+') as file:
        tasks = json.load(file)
        tasks.append(task)
        file.seek(0)
        json.dump(tasks, file)

add_task('Publish Medium article')

以 Pythonic 方式掌握最新動態。

責任編輯:武曉燕 來源: 數據STUDIO
相關推薦

2025-04-02 08:20:00

Python自動化文件管理腳本模板

2022-05-07 14:08:42

Python自動化腳本

2021-11-30 07:01:19

Python自動化腳本

2024-05-13 16:29:56

Python自動化

2022-02-17 13:03:28

Python腳本代碼

2024-06-21 10:46:44

2024-08-16 21:51:42

2021-05-23 16:23:22

Python 開發編程語言

2022-08-05 09:06:07

Python腳本代碼

2025-02-07 12:58:33

python自動化腳本

2023-11-21 22:48:50

2024-11-11 16:55:54

2021-07-25 22:43:39

Python代碼開發

2024-08-14 14:42:00

2025-03-20 08:30:00

Python編程文件管理

2024-10-28 19:36:05

2025-03-17 09:32:19

PythonExcel腳本

2022-07-21 14:38:17

PythonShell

2021-04-11 07:56:42

ShellLinux

2022-05-13 09:16:49

Python代碼
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 成人毛片在线视频 | 亚洲国产精品一区二区久久 | 久久最新精品视频 | 日韩午夜网站 | 成人av一区 | 日韩中文字幕视频在线 | 亚洲国产成人精 | 国产亚洲精品精品国产亚洲综合 | 国产一区二区久久 | 亚洲一级淫片 | 一区二区国产精品 | 欧美在线天堂 | 国产精品一区二区三级 | 国产一区二区三区在线看 | 久久久99精品免费观看 | 涩涩视频在线观看 | 美女黄网 | 成人国内精品久久久久一区 | av黄色国产 | 精品成人av | 黄色在线免费观看视频网站 | 日韩成人久久 | 国产精品亚洲综合 | 青青草一区 | 国产精品综合网 | 麻豆av一区二区三区久久 | 一级黄色录像毛片 | 国产精品99久久久久久宅男 | 亚洲视频一区二区三区 | 国产成人99久久亚洲综合精品 | 久久aⅴ乱码一区二区三区 亚洲国产成人精品久久久国产成人一区 | 免费的黄色片子 | 伊色综合久久之综合久久 | 亚洲国产精品一区 | 天天草天天射 | 国产亚洲一区二区三区 | 成人高清在线 | 一区二区日韩 | 欧美一级视频免费看 | 国产网站在线免费观看 | www.蜜桃av.com |