本文目录导读:

您提到的“批量高”可能是指 批量高亮、批量高质量处理,或者是某个特定工具(如Excel、文本编辑器、图片处理等)的批量操作,由于问题比较简略,以下我提供几个常见场景下的 实用批量高亮/处理脚本,您可以根据实际需求选择:
批量高亮文本中的关键词(Python脚本)
适用于在大量文本文件中标记特定词语(如日志分析、文档审核)。
import os
import re
def batch_highlight_keywords(folder_path, keywords, output_folder):
"""
批量高亮文件夹内所有txt文件中的关键词(用【】包围)
"""
if not os.path.exists(output_folder):
os.makedirs(output_folder)
for filename in os.listdir(folder_path):
if filename.endswith('.txt'):
with open(os.path.join(folder_path, filename), 'r', encoding='utf-8') as f:
content = f.read()
# 对每个关键词进行高亮(用【关键词】替换原词)
for kw in keywords:
content = re.sub(re.escape(kw), f'【{kw}】', content, flags=re.IGNORECASE)
output_path = os.path.join(output_folder, filename)
with open(output_path, 'w', encoding='utf-8') as f:
f.write(content)
print(f"已处理: {filename}")
# 使用示例
batch_highlight_keywords(
folder_path=r"C:\我的文档\原始文本",
keywords=["错误", "警告", "失败"],
output_folder=r"C:\我的文档\高亮结果"
)
批量高亮Excel中的特定单元格(VBA宏)
适用于在Excel工作簿中标记所有包含特定内容的单元格(背景色变红)。
Sub BatchHighlightCells()
Dim ws As Worksheet
Dim rng As Range
Dim cell As Range
Dim keywords As Variant
Dim kw As Variant
' 要搜索的关键词列表
keywords = Array("异常", "超时", "错误")
' 遍历所有工作表
For Each ws In ThisWorkbook.Worksheets
' 假设数据在A列到Z列,可根据需要修改范围
Set rng = ws.Range("A1:Z" & ws.Cells(ws.Rows.Count, "A").End(xlUp).Row)
For Each cell In rng
If Not IsError(cell.Value) Then
For Each kw In keywords
If InStr(1, cell.Value, kw, vbTextCompare) > 0 Then
cell.Interior.Color = RGB(255, 0, 0) ' 红色高亮
Exit For ' 避免重复染色
End If
Next kw
End If
Next cell
Next ws
MsgBox "批量高亮完成!"
End Sub
批量高亮PDF/图片中的文字(命令行工具结合脚本)
如果需要批量处理PDF或扫描件,可以使用 pdfplumber (Python) 或 Tesseract OCR。
# 示例:使用pdftotext提取文本后用grep高亮(Linux/Mac)
for file in *.pdf; do
pdftotext "$file" - | grep --color=always -E "关键字|关键词" > "${file%.pdf}_高亮.txt"
done
批量高质量压缩图片(保持画质)
使用 Pillow (Python) 或 ImageMagick 命令行:
# Python批量高质量压缩JPG
from PIL import Image
import os
def batch_compress(folder, quality=85):
for file in os.listdir(folder):
if file.lower().endswith(('.jpg', '.jpeg', '.png')):
img = Image.open(os.path.join(folder, file))
img.save(os.path.join(folder, f"compressed_{file}"),
optimize=True, quality=quality)
batch_compress("图片文件夹")
批量高水平去重(文本/数据)
适用于清洗大量重复数据(精确/模糊匹配):
# 基于哈希的精确去重
def batch_dedup(folder):
seen_hashes = set()
for file in os.listdir(folder):
with open(f"{folder}/{file}", 'r', encoding='utf-8') as f:
content = f.read()
hash_val = hash(content) # 或使用hashlib.md5
if hash_val in seen_hashes:
print(f"删除重复: {file}")
os.remove(f"{folder}/{file}")
else:
seen_hashes.add(hash_val)
请告诉我您具体需要“批量”处理什么(文本/Excel/图片/代码/视频?),以及“高”是指“高亮”、“高质量”还是“高频率/快速”?我可以提供更精准的脚本。