基于Python打造一個(gè)PDF合并器(支持批量拖拽合并)
有沒(méi)有遇到過(guò)這種情況:
- 多個(gè) PDF,你想合成一份復(fù)習(xí)資料?
- 下載了很多發(fā)票憑證、行程單,想合并成一份報(bào)銷文件?
- 每次打開(kāi) Acrobat 合并太麻煩,或者要付費(fèi)?
用 Python,只需幾行代碼,立刻搞定!
效果展示
安裝依賴
pip install PyPDF2 rich
核心代碼:merge_pdfs.py
import sys from pathlib import Path from PyPDF2 import PdfMerger from rich import print from rich.console import Console console = Console() def merge_pdfs(file_paths, output_path="merged.pdf"): merger = PdfMerger() for path in file_paths: console.print(f"?? 正在合并:[green]{path}[/]") merger.append(str(path)) merger.write(output_path) merger.close() console.print(f"\n? 已輸出合并文件:[bold yellow]{output_path}[/]") if __name__ == "__main__": if len(sys.argv) < 2: print("[red]? 請(qǐng)至少指定兩個(gè) PDF 文件[/]") sys.exit(1) input_files = [Path(f) for f in sys.argv[1:]] merge_pdfs(input_files)
拖拽也能用!
Mac 或 Windows 上,可以直接把 PDF 拖到終端窗口運(yùn)行:
$ python merge_pdfs.py [拖進(jìn)來(lái)的文件1] [文件2] ...
拓展玩法
- 支持合并任意數(shù)量的 PDF
- 可定制輸出名稱:
python merge_pdfs.py a.pdf b.pdf c.pdf -o all.pdf
- 加入 GUI:配合 Tkinter 做個(gè)小工具
實(shí)用場(chǎng)景
- 發(fā)票合并報(bào)銷
- 學(xué)習(xí)資料整合
- 一鍵打包作業(yè)/合同/申請(qǐng)材料
到此這篇關(guān)于基于Python打造一個(gè)PDF合并器(支持批量拖拽合并)的文章就介紹到這了,更多相關(guān)Python PDF合并器內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Django實(shí)現(xiàn)接口token檢測(cè)的方法詳解
這篇文章主要為大家詳細(xì)介紹了如何使用Django實(shí)現(xiàn)接口token檢測(cè),文中的示例代碼簡(jiǎn)潔易懂,感興趣的小伙伴可以跟隨小編一起學(xué)習(xí)一下2025-03-03python 日志模塊logging的使用場(chǎng)景及示例
這篇文章主要介紹了python 日志模塊logging的使用場(chǎng)景及示例,幫助大家更好的理解和使用python,感興趣的朋友可以了解下2021-01-01Python中g(shù)lobal關(guān)鍵字的用法詳解
Python是一種簡(jiǎn)單而強(qiáng)大的編程語(yǔ)言,提供了許多功能和語(yǔ)法來(lái)幫助開(kāi)發(fā)人員編寫(xiě)高效的代碼,其中一個(gè)常用的功能是使用global關(guān)鍵字來(lái)在函數(shù)內(nèi)部訪問(wèn)和修改全局變量,在本文中,我們將深入探討Python中g(shù)lobal關(guān)鍵字的用法,以及使用它的一些最佳實(shí)踐2023-12-12python 實(shí)現(xiàn)二維數(shù)組的索引、刪除、拼接操作
這篇文章主要介紹了python 實(shí)現(xiàn)二維數(shù)組的索引、刪除、拼接操作,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2021-05-05pytorch實(shí)現(xiàn)Tensor變量之間的轉(zhuǎn)換
今天小編就為大家分享一篇pytorch實(shí)現(xiàn)Tensor變量之間的轉(zhuǎn)換,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2020-02-02