分享

10个好用到爆的Python自动化脚本(附代码)

 cnzrp 2024-01-10 发布于山西
来源:机器学习杂货店

本文约2700字,建议阅读5分钟

本文为你介绍10个Python自动化脚本,以使你的工作更加自动化,生活更加轻松。

在这个自动化时代,我们有很多重复无聊的工作要做。想想这些你不再需要一次又一次地做的无聊的事情,让它自动化,让你的生活更轻松。那么在本文中,将向您介绍10个Python自动化脚本,以使你的工作更加自动化,生活更加轻松。

  • 解析和提取HTML
  • 二维码扫描仪
  • 截图
  • 创建有声读物
  • PDF编辑器
  • 迷你StackoverFlow
  • 自动化手机
  • 监控CPU/GPU温度
  • Instagram上传机器人
  • 视频水印

01、解析和提取 HTML

此自动化脚本将帮助你从网页URL中提取HTML,然后还为你提供可用于解析HTML以获取数据的功能。这个很棒的脚本对于网络爬虫和那些想要解析HTML以获取重要数据的人来说是一种很好的享受。

# 解析和提取 HTML # pip install gazpacho进口西班牙凉菜汤# 从 URL 中提取 HTML url = ' https://www./' html = gazpacho.get(url) print(html)# 提取带有标题的 HTML headers = {'User-Agent': 'Mozilla/5.0'} html = gazpacho.get(url, headers=headers) print(html)# 解析 HTML解析 = gazpacho.Soup(html)# 查找单个标签tag1 = parse.find('h1') tag2 = parse.find('span')# 查找多个标签tags1 = parse.find_all('p') tags2 = parse.find_all('a')# 按类查找标签tag = parse.find('.class')# 按属性查找标签tag = parse.find('div', attrs={'class': 'test'})# 从标签中提取文本text = parse.find('h1').text text = parse.find_all('p')[0].text

02、二维码扫描仪

拥有大量二维码图像或只想扫描二维码图像,那么此自动化脚本将帮助你。该脚本使用Qrtools模块,使你能够以编程方式扫描QR图像。

# 二维码扫描仪# pip install qrtools从 qrtools 导入 Qrdef Scan_Qr(qr_img): qr = Qr() qr.decode(qr_img) print(qr.data) return qr.dataprint('您的二维码是:', Scan_Qr('qr.png'))

03、截图

现在,你可以使用下面这个很棒的脚本以编程方式截取屏幕截图。使用此脚本,你可以直接截屏或截取特定区域的屏幕截图。

# 抓取屏幕截图# pip install pyautogui # pip install Pillowfrom pyautogui import screenshot import time from PIL import ImageGrab# 抓取屏幕截图def grab_screenshot():     shot = screenshot()     shot.save('my_screenshot.png')# 抓取特定区域的截图def grab_screenshot_area():     area = (0, 0, 500, 500)     shot = ImageGrab.grab(area)     shot.save('my_screenshot_area.png')# 延迟截屏def grab_screenshot_delay(): time.sleep     (5)     shot = screenshot()     shot.save('my_screenshot_delay.png')

04、创建有声读物

厌倦了手动将您的PDF书籍转换为有声读物,那么这是你的自动化脚本,它使用 GTTS模块将你的PDF文本转换为音频。

# 创建有声读物# pip install gTTS # pip install PyPDF2from PyPDF2 import PdfFileReader as readerfrom gtts import gTTSdef create_audio(pdf_file): read_Pdf = reader(open(pdf_file, 'rb')) for page in range(read_Pdf.numPages): text = read_Pdf.getPage(page).extractText() tts = gTTS(text, lang=' en') tts.save('page' + str(page) + '.mp3')create_audio('book.pdf')

05、PDF 编辑器

使用以下自动化脚本使用Python编辑PDF文件。该脚本使用PyPDF4模块,它是PyPDF2的升级版本,下面我编写了Parse Text、Remove pages等常用功能。

当你有大量PDF文件要编辑或需要以编程方式在Python项目中使用脚本时,这是一个方便的脚本。

# PDF 编辑器# pip install PyPDf4import PyPDF4# 从 PDF 解析文本def parse_text(pdf_file):     reader = PyPDF4.PdfFileReader(pdf_file)     for page in reader.pages:         print(page.extractText())# 从 PDF 中删除页面def remove_page(pdf_file, page_numbers):     filer = PyPDF4.PdfReader('source.pdf', 'rb')     out = PyPDF4.PdfWriter()     for index in page_numbers:         page = filer.pages[index]         out .add_page(页面)用 open('rm.pdf', 'wb') as f:         out.write(f)# 添加空白页到 PDF def add_page(pdf_file, page_number):     reader = PyPDF4.PdfFileReader(pdf_file)     writer = PyPDF4.PdfWriter()     writer.addPage()     with open('add.pdf', 'wb') as f:         writer.write(f)# 旋转页面def rotate_page(pdf_file):     reader = PyPDF4.PdfFileReader(pdf_file)     writer = PyPDF4.PdfWriter()     for page in reader.pages:         page.rotateClockwise(90)         writer.addPage(page)     with open('rotate.pdf ', 'wb') as f:         writer.write(f)# 合并 PDF def merge_pdfs(pdf_file1, pdf_file2):     pdf1 = PyPDF4.PdfFileReader(pdf_file1)     pdf2 = PyPDF4.PdfFileReader(pdf_file2)     writer = PyPDF4.PdfWriter()     for page in pdf1.pages:         writer.addPage(page)     for page in pdf2.pages:         writer.addPage(page)     with open('merge.pdf', 'wb') as f:         writer.write(f)

06、迷你 Stackoverflow

作为一名程序员,我知道我们每天都需要StackOverflow,但你不再需要在Google上搜索它。现在,在您继续处理项目的同时,在你的CMD中获得直接解决方案。通过使用Howdoi模块,你可以在命令提示符或终端中获得StackOverflow解决方案。你可以在下面找到一些可以尝试的示例。

# Automate Stackoverflow# pip install howdoi# Get Answers in CMD#example 1> howdoi how do i install python3# example 2> howdoi selenium Enter keys# example 3> howdoi how to install modules# example 4> howdoi Parse html with python# example 5> howdoi int not iterable error# example 6> howdoi how to parse pdf with python# example 7> howdoi Sort list in python# example 8> howdoi merge two lists in python# example 9>howdoi get last element in list python# example 10> howdoi fast way to sort list

07、自动化手机

您可以了解有关 ADB的更多信息,并探索更多令人兴奋的方法来实现手机自动化,让您的生活更轻松。

# 自动化手机# pip install opencv-pythonimport subprocessdef main_adb(cm):     p = subprocess.Popen(cm.split(''), stdout=subprocess.PIPE, shell=True)     (output, _) = p.communicate()     return output.decode('utf-8 ')# Swipe def swipe(x1, y1, x2, y2, duration):     cmd = 'adb shell input swipe {} {} {} {} {}'.format(x1, y1, x2, y2, duration)     return main_adb(命令)# 点击或点击def tap(x, y):     cmd = 'adb shell input tap {} {}'.format(x, y)     return main_adb(cmd)# 拨打电话def make_call(number):     cmd = f'adb shell am start -a android.intent.action.CALL -d tel:{number}'     return main_adb(cmd)# 发送短信def send_sms(number, message):     cmd = 'adb shell am start -a android.intent.action.SENDTO -d sms:{} --es sms_body '{}''.format(number, message)     return main_adb(cmd)# 从手机下载文件到电脑def download_file(file_name):     cmd = 'adb pull /sdcard/{}'.format(file_name)     return main_adb(cmd)# 截图def screenshot():     cmd = 'adb shell screencap -p'     return main_adb(cmd)# 开机关机def power_off():     cmd = ''adb shell input keyevent 26''     return main_adb(cmd)

08、监控 CPU/GPU 温度

你可能使用CPU-Z或任何规格监控软件来捕获你的Cpu 和Gpu温度,但你也可以通过编程方式进行。好吧,这个脚本使用Pythonnet和OpenhardwareMonitor来帮助你监控当前的Cpu和Gpu温度。

你可以使用它在达到一定温度时通知自己,也可以在Python项目中使用它来简化日常生活。

# 获取 CPU/GPU 温度# pip install pythonnet从 OpenHardwareMonitorLib导入 clr clr.AddReference('OpenHardwareMonitorLib') *spec = Computer() spec.GPUEnabled = True spec.CPUEnabled = True spec.Open()# Get CPU Temp def Cpu_Temp(): while True: for cpu in range(0, len(spec.Hardware[0].Sensors)): if '/temperature' in str(spec.Hardware[0].Sensors[cpu ].Identifier): print(str(spec.Hardware[0].Sensors[cpu].Value))# Get GPU Temp def Gpu_Temp() while True: for gpu in range(0, len(spec.Hardware[0].Sensors)): if '/temperature' in str(spec.Hardware[0].Sensors[gpu] .Identifier): print(str(spec.Hardware[0].Sensors[gpu].Value))

09、Instagram 上传机器人

Instagram是一个著名的社交媒体平台,你现在不需要通过智能手机上传照片或视频。你可以使用以下脚本以编程方式执行此操作。

# 在 Insta 上上传照片和视频# pip install instabot从 instabot 导入 Botdef Upload_Photo(img):     robot = Bot()     robot.login(username='user', password='pass')     robot.upload_photo(img, caption='Medium Article')     print('照片上传')def Upload_Video(video):     robot = Bot()     robot.login(username='user', password='pass')     robot.upload_video(video, caption='Medium Article')     print('Video Uploaded')def Upload_Story(img):     robot = Bot()     robot.login(username='user', password='pass')     robot.upload_story(img, caption='Medium Article')     print('Story Photos Uploaded')Upload_Photo('img.jpg') Upload_Video('video.mp4')

10、视频水印

使用此自动化脚本为你的视频添加水印,该脚本使用Moviepy,这是一个方便的视频编辑模块。在下面的脚本中,你可以看到如何添加水印并且可以自由使用它。

# 使用 Python 制作视频水印# pip install moviepy从moviepy.editor导入*clip = VideoFileClip('myvideo.mp4', audio=True) width,height = clip.size text = TextClip('WaterMark', font='Arial', color='white', fontsize=28)set_color = text.on_color(size=(clip.w + text.w, text.h-10), color=(0,0,0), pos=(6,'center'), col_opacity=0.6) set_textPos = set_color.set_pos( lambda pos: (max(width/30,int(width-0.5* width* pos)),max(5*height/6,int(100* pos))) )Output = CompositeVideoClip([clip, set_textPos]) Output.duration = clip.duration Output.write_videofile('output.mp4', fps=30, codec='libx264')

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多