我的编程空间,编程开发者的网络收藏夹
学习永远不晚

20个Python编程脚本,让你拥有超能力

短信预约 -IT技能 免费直播动态提醒
省份

北京

  • 北京
  • 上海
  • 天津
  • 重庆
  • 河北
  • 山东
  • 辽宁
  • 黑龙江
  • 吉林
  • 甘肃
  • 青海
  • 河南
  • 江苏
  • 湖北
  • 湖南
  • 江西
  • 浙江
  • 广东
  • 云南
  • 福建
  • 海南
  • 山西
  • 四川
  • 陕西
  • 贵州
  • 安徽
  • 广西
  • 内蒙
  • 西藏
  • 新疆
  • 宁夏
  • 兵团
手机号立即预约

请填写图片验证码后获取短信验证码

看不清楚,换张图片

免费获取短信验证码

20个Python编程脚本,让你拥有超能力

目录

  1. 文件重复查找器(拯救你的硬盘空间)
  2. 自动整理下载文件夹(拯救文件夹混乱)
  3. 批量调整图像大小(只需几秒,图片就好)
  4. 实时天气通知器(再也不用被雨淋了)
  5. 邮件推送Reddit新帖子(Reddit上瘾梦)
  6. 网页转换电子书(离线访问必备)
  7. 将文本转换为语音(旁白模式,已激活)
  8. 检查网站可用性(为网站管理员而生)
  9. 跟踪加密货币价格(因为 HODL)
  10. 下载完成后关闭你的电脑(因为等待无聊)
  11. 为你的脚本设置密码保护(保持代码安全)
  12. 监控计算机的CPU使用率(保持冷静,真的很冷)
  13. 将PDFs转换为文本(为了图书管理)
  14. 生成二维码(以便不时之需)
  15. 下载YouTube视频(再见了,所有的广告)
  16. 创建随机强密码(别让密码太好猜)
  17. 获取实时股票价格(为投资者而生)
  18. 创建简单聊天机器人(你好,再见)
  19. 每日步数跟踪(保持健康)
  20. 创建待办事项列表(生产力是关键)

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"发现重复文件: {full_path} == {hashes[file_hash]}")
            else:
                hashes[file_hash] = full_path

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

提示: 不要在系统文件夹上盲目运行这个脚本,除非你想引入一些混乱。

笔者曾在运行这个脚本后,在不到10分钟的时间内释放了10GB的空间。

2. 自动整理下载文件夹(拯救文件夹混乱)

我们都知道那种感觉:有一天,你的下载文件夹看起来就像龙卷风过后的景象。这里有一个脚本可以整齐地整理一切。

import os
import shutil

def organize_folder(folder):
    file_types = {
        '图片': ['.jpeg', '.jpg', '.png', '.gif'],
        '视频': ['.mp4', '.avi', '.mov'],
        '文档': ['.pdf', '.docx', '.txt'],
        '压缩包': ['.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'将 {filename} 移动到 {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')):
            img = Image.open(os.path.join(folder, filename))
            img = img.resize((width, height))
            img.save(os.path.join(folder, f"resized_{filename}"))
            print(f'调整了 {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

示例脚本可以获取纽约气候,想要获取本地天气将url更换至本地天气预报网站即可。

5. 邮件推送Reddit新帖子(Reddit上瘾梦)

如果你对某个特定的subreddit非常着迷,但又不想经常查看,这里有一个 Python 脚本,可以将最新的帖子直接发送到你的收件箱。

import smtplib
import requests

def send_email(subject, body):
    from_addr = 'your_email@example.com'
    to_addr = 'your_email@example.com'
    msg = f"主题: {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('最新 Reddit 帖子', '\n'.join(posts))

有趣的事实: 普通 Reddit 用户每次访问网站的平均时间为 16 分钟。自动化这个过程可以节省你很多时间。

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='章节 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', '我的电子书')

7. 将文本转换为语音(旁白模式,已激活)

想要倾听代码输出的声音?这个脚本将打开你的耳朵。

import pyttsx3

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

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

提示: 听输出可以捕捉错误或让自己从阅读中解脱出来。

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. 跟踪加密货币价格(因为 HODL)

不要错过下一个下跌或上涨。使用这个脚本跟踪你最喜欢的加密货币价格。

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. 下载完成后关闭你的电脑(因为等待无聊)

让你的电脑自己处理。这段脚本在下载完成时关闭你的电脑

import os
import time

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

check_downloads()

现在你可以点击“下载”,走开,等你回来时,电脑已经关机。

11. 为你的脚本设置密码保护(保持代码安全)

这里有一个有趣的脚本:给你的脚本设置密码保护,以便没有权限的人无法运行它们。

import getpass

password = getpass.getpass('输入你的密码: ')
if password != 'secret':
    print('访问被拒绝')
    exit()
else:
    print('访问授权')
    # 在这里放置你的受保护代码

12. 监控CPU使用率(保持冷静,真的很冷)

用下面的脚本监控你的CPU温度和使用情况。

import psutil

def monitor_cpu():
    print(f"CPU 使用率: {psutil.cpu_percent()}%")
    print(f"内存使用率: {psutil.virtual_memory().percent}%")

monitor_cpu()

因为过热从来都不是一件好事。

13. 将PDFs转换为文本(为了图书管理)

如果你经常处理 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):
    img = qrcode.make(text)
    img.save(f"{filename}.png")

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

谁知道生成二维码竟然这么简单?

15. 下载YouTube视频(再见了,所有广告)

在几秒钟内下载你最喜欢的YouTube视频。

from pytube import YouTube

def download_video(url):
    yt = YouTube(url)
    yt.streams.get_highest_resolution().download()

download_video('https://www.youtube.com/watch?v=your_favorite_video')

请记住不要侵权下载使用哦。

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 = ['你好!', '我能帮你什么?', '再见!']
    while True:
        user_input = input("你: ")
        if user_input.lower() == 'bye':
            print("聊天机器人: 再见!")
            break
        print(f"聊天机器人: {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"今天的步数: {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('发布 Medium 文章')

以毕达哥拉斯的方式,保持对事物的关注。

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

20个Python编程脚本,让你拥有超能力

下载Word文档到电脑,方便收藏和打印~

下载Word文档

猜你喜欢

20个Python编程脚本,让你拥有超能力

你是否有时看着硬盘突然发现:为什么只剩下100MB空间了?偷偷占用空间多数就是重复文件。以下是一个查找并删除它们的脚本,让我们释放你的空间。

十个Python编程脚本,超能力再升级

手动整理文件和文件夹可能很繁琐。这个Python脚本可以自动根据文件扩展名将文件分类到对应的文件夹。

Python自动化:适合新手练习的五个有趣又实用的Python脚本,帮你快速掌握编程技能!拿走不谢!

在现在这个技术高速发达的时代,有很多便捷的工具可以实现这一目的,并且效果还会更好,比如机器学习和深度学习算法。因此,该脚本只是为了学习实践的目的。

编程热搜

  • Python 学习之路 - Python
    一、安装Python34Windows在Python官网(https://www.python.org/downloads/)下载安装包并安装。Python的默认安装路径是:C:\Python34配置环境变量:【右键计算机】--》【属性】-
    Python 学习之路 - Python
  • chatgpt的中文全称是什么
    chatgpt的中文全称是生成型预训练变换模型。ChatGPT是什么ChatGPT是美国人工智能研究实验室OpenAI开发的一种全新聊天机器人模型,它能够通过学习和理解人类的语言来进行对话,还能根据聊天的上下文进行互动,并协助人类完成一系列
    chatgpt的中文全称是什么
  • C/C++中extern函数使用详解
  • C/C++可变参数的使用
    可变参数的使用方法远远不止以下几种,不过在C,C++中使用可变参数时要小心,在使用printf()等函数时传入的参数个数一定不能比前面的格式化字符串中的’%’符号个数少,否则会产生访问越界,运气不好的话还会导致程序崩溃
    C/C++可变参数的使用
  • css样式文件该放在哪里
  • php中数组下标必须是连续的吗
  • Python 3 教程
    Python 3 教程 Python 的 3.0 版本,常被称为 Python 3000,或简称 Py3k。相对于 Python 的早期版本,这是一个较大的升级。为了不带入过多的累赘,Python 3.0 在设计的时候没有考虑向下兼容。 Python
    Python 3 教程
  • Python pip包管理
    一、前言    在Python中, 安装第三方模块是通过 setuptools 这个工具完成的。 Python有两个封装了 setuptools的包管理工具: easy_install  和  pip , 目前官方推荐使用 pip。    
    Python pip包管理
  • ubuntu如何重新编译内核
  • 改善Java代码之慎用java动态编译

目录