当前位置: 首页 > news >正文

装修公司网站用的织梦如何免费找精准客户

装修公司网站用的织梦,如何免费找精准客户,青海省住房和建设门户网站,外贸网站注册前言:日常生活中,我们常常会跟WPS Office打交道。作表格,写报告,写PPT......可以说,我们的生活已经离不开WPS Office了。与此同时,我们在这个过程中也会遇到各种各样的技术阻碍,例如部分软件的PDF转Word需要收取额外费用等。那么,可不可以自己开发一个小工具来实现PDF转…

前言:日常生活中,我们常常会跟WPS Office打交道。作表格,写报告,写PPT......可以说,我们的生活已经离不开WPS Office了。与此同时,我们在这个过程中也会遇到各种各样的技术阻碍,例如部分软件的PDF转Word需要收取额外费用等。那么,可不可以自己开发一个小工具来实现PDF转Word这个功能呢?答案是肯定的,Python生来就是为应用层开发的。话不多说,我们直接开始今天的Python学习之路-利用Python编写一个基于PyQt5,pdf2docx,pathlib,sys,os,datetimePDF转Word工具。

 编程思路:本次编程我们将会调用到PyQt5,pdf2docx,pathlib,datetime,sys,os等库。其中,PyQt5提供了图形用户交互界面,线程池,信号槽等槽点。pdf2docx则负责将PDF文档转换为Word文档。pathlib获取生成的Word文档的绝对路径,并保证Word文档存放在系统的指定位置。datetime库用来获取系统当前的时间参数,并将其以时间戳的形式给生成的Word文档命名,这对用户后面方便搜索和查询文件详细信息非常重要。sys使我们与Python解释器(PyCharm)进行交互、以及控制程序的执行成为了可能。本次编程中,os库被用于启动文件浏览器(os.startfile),以便我们选择要转换的 PDF 文件。具体来说,我们可以用它在 Windows 系统上打开所想要转换的PDF的所在文件或目录。本次,我们还会将gif动画导入GUI界面,让用户的体验感更好。

第一步:导入库

标准库:pathlib,sys,os,datetime。

第三方库:PyQt5,pdf2docx。

# 导入库
import sys
import os
from PyQt5.QtWidgets import *
from PyQt5.QtCore import Qt, QThread, pyqtSignal
from PyQt5.QtGui import QMovie  # 导入QMovie类
from pdf2docx import Converter
from pathlib import Path
from datetime import datetime

 

第二步:建立功能类

这一步中我们需要建立两个类:1,线程进度类  2,转换窗口类。

线程进度类:负责PDF文档从PDF格式转换为Word格式的目录创建,格式转换,新文件生成等步骤的执行。

转换窗口类:负责PDF文档转Word文档过程中GUI各控件(按钮,主窗口,进度条,信息框等)的布局。

本次我们将动态进度条改为了固定的文字显示,以免用户被系统报错而停滞的进度条误导。

# 线程进度类
class ConversionThread(QThread):progress_updated = pyqtSignal(str)  # 修改为仅传递描述信息conversion_finished = pyqtSignal(bool, str)# 线程初始化def __init__(self, pdf_path, output_dir):super().__init__()self.pdf_path = pdf_pathself.output_dir = output_dirself.docx_path = ""def run(self):try:# 创建输出目录output_path = Path(self.output_dir)output_path.mkdir(parents=True, exist_ok=True)# 生成带时间戳的文件名timestamp = datetime.now().strftime("%Y%m%d%H%M%S")original_name = Path(self.pdf_path).stemself.docx_path = str(output_path / f"{original_name}_{timestamp}.docx")# 初始化转换器cv = Converter(self.pdf_path)# 获取总页数用于进度计算total_pages = len(cv.pages)current_page = 0def detailed_progress(progress, description):nonlocal current_pageif description["event"] == "page_parsed":current_page += 1self.pr
http://www.tj-hxxt.cn/news/83093.html

相关文章:

  • mweb wordpressseo技术平台
  • 潍坊哪家做网站做的最好网站收录有什么用
  • 怎么做高端品牌网站设计外贸平台app
  • 教做flash的网站网站策划方案
  • 返利导购网站建设需求文档考研培训
  • 自己可以做网站服务器吗推广产品的方式有哪些
  • wordpress 拒绝连接长春关键词优化排名
  • 电子商务中网站建设百度推广手机app下载
  • 网站建设的域名注册宁波seo推广服务电话
  • 外贸网站建设 福田b2b电子商务网站都有哪些
  • 用个人的信息备案网站如何建网站不花钱
  • 南京网站建设优化线下宣传渠道和宣传方式
  • 免费做网站有哪些家今天全国疫情最新消息
  • 网站英文怎么写网站怎么做
  • 九江有没有做网站的公司邹平县seo网页优化外包
  • 赌博网站游戏怎么做广州全网推广
  • 信阳市住房和城乡建设局网站全网营销推广软件
  • 广告设计素材免费的网站seo排名资源
  • 可以做免费广告的网站电脑办公软件培训班
  • 深圳网页设计制作网站计算机培训机构
  • 济南微信网站百度的代理商有哪些
  • 南通网站制作专家windows优化大师免费
  • 重庆时时彩在线网站制作推广app下载
  • 深圳市手机网站建设报价百度网站大全首页
  • 那个网站做苗木网站的优化从哪里进行
  • 有用建站宝盒做网站的吗推广普通话宣传语100字
  • 如何提高网站用户体验北京百度竞价托管
  • 移动web网站开发我想做app推广怎么做
  • 高密哪里做网站百度推广最近怎么了
  • 汕头网站建设公司有哪些网络销售是什么