最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Python基于easygui實現(xiàn)pdf和word轉(zhuǎn)換小程序

 更新時間:2024年04月18日 09:41:17   作者:蝸牛其實也很努力  
這篇文章主要為大家詳細介紹了Python如何基于easygui實現(xiàn)pdf和word轉(zhuǎn)換小程序,文中的示例代碼講解詳細,感興趣的小伙伴可以跟隨小編一起學(xué)習(xí)一下

核心代碼

# TODO 編寫pdf轉(zhuǎn)換器  制作exe程序
import easygui
import os
from docx2pdf import convert
from pdf2docx import Converter
from pdf2image import convert_from_path
import io
import sys
 
 
buffer = io.StringIO()
sys.stdout = buffer
sys.stderr = buffer
 
desktop_path = os.path.join(os.path.expanduser("~"), "Desktop")
 
 
# TODO word轉(zhuǎn)換成pdf實測可用
def word_to_pdf():
    word_file = easygui.fileopenbox(title="請上傳要轉(zhuǎn)換為pdf格式的word文件", default="*.docx")
    if word_file:
        pdf_file = word_file.replace(".docx", ".pdf")
        convert(word_file, pdf_file)
        easygui.msgbox(f"Word 文檔已成功轉(zhuǎn)換為 PDF:{pdf_file}", title="轉(zhuǎn)換成功")
    else:
        easygui.msgbox("取消操作", title="操作取消")
 
 
def pdf_to_word():
    pdf_file = easygui.fileopenbox(title="請上傳要轉(zhuǎn)換為word格式的pdf文件", default="*.pdf")
    # 如果上傳了文件,開始執(zhí)行轉(zhuǎn)換操作
    if pdf_file:
        docx_name = os.path.splitext(os.path.basename(pdf_file))[0] + ".docx"
        docx_path = os.path.join(desktop_path, docx_name)
        cv = Converter(pdf_file)
        cv.convert(docx_path)
        cv.close()
        easygui.msgbox(f"PDF 文檔已成功轉(zhuǎn)換為 Word:{docx_path}", title="轉(zhuǎn)換成功")
    # 如果沒上傳,被視為取消操作
    else:
        easygui.msgbox("取消操作", title="操作取消")
 
 
choices = ["Word 轉(zhuǎn)換 PDF", "PDF 轉(zhuǎn)換 Word"]
choice = easygui.buttonbox("請選擇要執(zhí)行的操作", "文件轉(zhuǎn)換小工具", choices=choices)
 
if choice == "Word 轉(zhuǎn)換 PDF":
    word_to_pdf()
elif choice == "PDF 轉(zhuǎn)換 Word":
    pdf_to_word()
else:
    easygui.msgbox("未選擇任何操作", title="操作取消")

效果

制作成exe程序

安裝pyinstaller

pip3 install -i https://pypi.douban.com/simple/  pyinstaller

進入腳本所在目錄,cmd執(zhí)行

# --noconsole指的是執(zhí)行程序后不顯示cmd的會話,即執(zhí)行程序后不會彈出cmd的會話彈窗
 
pyinstaller --noconsole -F <pyname>

只要沒明顯報錯,基本就可以用

會在當(dāng)前目錄下生成build和dist目錄

雙擊即可使用

FAQ

Traceback (most recent call last): File "轉(zhuǎn)換器.py", line 173, in <module> File "轉(zhuǎn)換器.py", line 148, in word_to_pdf File "docx2pdf\__init__.py", line 106, in convert File "docx2pdf\__init__.py", line 29, in windows File "tqdm\asyncio.py", line 24, in __init__ File "tqdm\std.py", line 1099, in __init__ File "tqdm\std.py", line 1348, in refresh File "tqdm\std.py", line 1496, in display File "tqdm\std.py", line 462, in print_status File "tqdm\std.py", line 455, in fp_write File "tqdm\utils.py", line 139, in __getattr__ AttributeError: 'NoneType' object has no attribute 'write'

此報錯是因為tqdm庫(顯示進度條的)這個庫可能不兼容有什么其他問題,解決方法:

添加以下代碼:

buffer = io.StringIO()
sys.stdout = buffer
sys.stderr = buffer

以上就是Python基于easygui實現(xiàn)pdf和word轉(zhuǎn)換小程序的詳細內(nèi)容,更多關(guān)于Python pdf和word轉(zhuǎn)換的資料請關(guān)注腳本之家其它相關(guān)文章!

相關(guān)文章

  • 詳解django使用include無法跳轉(zhuǎn)的解決方法

    詳解django使用include無法跳轉(zhuǎn)的解決方法

    這篇文章主要介紹了詳解django使用include無法跳轉(zhuǎn)的解決方法,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-03-03
  • 如何打包Python Web項目實現(xiàn)免安裝一鍵啟動的方法

    如何打包Python Web項目實現(xiàn)免安裝一鍵啟動的方法

    這篇文章主要介紹了如何打包Python Web項目,實現(xiàn)免安裝一鍵啟動,本文給大家介紹的非常詳細,對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2020-05-05
  • 深入理解 Python 中的 asyncio.Lock

    深入理解 Python 中的 asyncio.Lock

    本文主要介紹了深入理解 Python中asyncio.Lock,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2026-05-05
  • python pandas 組內(nèi)排序、單組排序、標(biāo)號的實例

    python pandas 組內(nèi)排序、單組排序、標(biāo)號的實例

    下面小編就為大家分享一篇python pandas 組內(nèi)排序、單組排序、標(biāo)號的實例,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2018-04-04
  • 利用Python?list列表修改元素

    利用Python?list列表修改元素

    這篇文章主要介紹了利用Python?list列表修改元素,Python?提供了兩種修改列表(list)元素的方法,我們可以每次修改單個元素,也可以每次修改一組元素
    2022-06-06
  • 詳解Python3 pickle模塊用法

    詳解Python3 pickle模塊用法

    pickle模塊中的兩個主要函數(shù)是dump()和load(),這篇文章主要介紹了Python3 pickle模塊用法,需要的朋友可以參考下
    2019-09-09
  • Django利用LogEntry生成歷史操作實戰(zhàn)記錄

    Django利用LogEntry生成歷史操作實戰(zhàn)記錄

    LogEntry是在后臺開發(fā)中經(jīng)常用到的模塊,它在admin是默認(rèn)開啟的。文中給大家介紹了在admin頁面上查看操作日志的方法及實戰(zhàn)代碼,感興趣的朋友跟隨小編一起看看吧
    2021-12-12
  • Python3列表刪除的三種方式實現(xiàn)

    Python3列表刪除的三種方式實現(xiàn)

    本文主要介紹了Python3列表刪除的三種方式實現(xiàn),文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2022-08-08
  • 賺瘋了!轉(zhuǎn)手立賺800+?大佬的python「搶茅臺腳本」使用教程

    賺瘋了!轉(zhuǎn)手立賺800+?大佬的python「搶茅臺腳本」使用教程

    這篇文章主要介紹了如果利用python搶購京東茅臺,幫助大家更好的理解和使用python,感興趣的朋友可以了解下
    2021-01-01
  • 使用Python實現(xiàn)在PDF中添加空白頁面的方法

    使用Python實現(xiàn)在PDF中添加空白頁面的方法

    在日常辦公和數(shù)據(jù)處理中,PDF文件因其格式穩(wěn)定性被廣泛使用,本文將介紹Python如何使用Spire.PDF for Python實現(xiàn)為PDF添加空白頁面,感興趣的小伙伴可以了解下
    2025-11-11

最新評論

杭锦旗| 永登县| 锦州市| 永吉县| 衡阳市| 麻城市| 高唐县| 樟树市| 阿城市| 南和县| 顺义区| 纳雍县| 华蓥市| 罗江县| 祁东县| 扎兰屯市| 翼城县| 乌苏市| 宽城| 乃东县| 德保县| 临汾市| 武定县| 太湖县| 会宁县| 崇仁县| 嘉峪关市| 肥乡县| 咸宁市| 道真| 巩义市| 宜兰市| 汝州市| 德令哈市| 三门峡市| 大港区| 阳新县| 盐源县| 南皮县| 塔河县| 滨州市|