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

建站模板网站wordpress移动版主题

建站模板网站,wordpress移动版主题,网站被攻击的方法,自己做的网站可以挂在哪里一个使用pyqt的word文档查重工具 使用场景代码使用截图打包好的软件下载链接结尾 使用场景 有时我们在借鉴一篇文档之后还不想有太多重复,这个时候可以使用这个工具对两个word文档进行对比 代码 import sys from PyQt5.QtWidgets import QApplication, QMainWind…

一个使用pyqt的word文档查重工具

  • 使用场景
  • 代码
  • 使用截图
  • 打包好的软件下载链接
  • 结尾

使用场景

有时我们在借鉴一篇文档之后还不想有太多重复,这个时候可以使用这个工具对两个word文档进行对比

代码

import sys
from PyQt5.QtWidgets import QApplication, QMainWindow, QPushButton, QVBoxLayout, QWidget, QLabel, QFileDialog
from docx import Document
import re, datetimeclass WordComparerApp(QMainWindow):def __init__(self):super().__init__()self.initUI()def initUI(self):self.setWindowTitle('Word 文档比较器')self.setGeometry(100, 100, 400, 200)self.centralWidget = QWidget(self)self.setCentralWidget(self.centralWidget)self.layout = QVBoxLayout()self.file1_label = QLabel('选择文件1:')self.layout.addWidget(self.file1_label)self.file1_button = QPushButton('选择文件1')self.file1_button.clicked.connect(self.openFile1)self.layout.addWidget(self.file1_button)self.file2_label = QLabel('选择文件2:')self.layout.addWidget(self.file2_label)self.file2_button = QPushButton('选择文件2')self.file2_button.clicked.connect(self.openFile2)self.layout.addWidget(self.file2_button)self.compare_button = QPushButton('开始比较')self.compare_button.clicked.connect(self.compareFiles)self.layout.addWidget(self.compare_button)self.centralWidget.setLayout(self.layout)def openFile1(self):options = QFileDialog.Options()file1, _ = QFileDialog.getOpenFileName(self, "选择文件1", "", "Word Files (*.docx)", options=options)if file1:self.file1_label.setText(f'选择文件1: {file1}')self.file1 = file1def openFile2(self):options = QFileDialog.Options()file2, _ = QFileDialog.getOpenFileName(self, "选择文件2", "", "Word Files (*.docx)", options=options)if file2:self.file2_label.setText(f'选择文件2: {file2}')self.file2 = file2def compareFiles(self):if hasattr(self, 'file1') and hasattr(self, 'file2'):doc1 = self.readDocx(self.file1)doc2 = self.readDocx(self.file2)print('开始比对...'.center(80, '*'))t1 = datetime.datetime.now()for i in range(len(doc1)):if i % 100 == 0:print('处理进行中,已处理段落 {0:>4d} (总数 {1:0>4d} ) '.format(i, len(doc1)))for j in range(len(doc2)):self.compareParagraph(doc1, i, doc2, j)t2 = datetime.datetime.now()print('\n比对完成,总用时: ', t2 - t1)def getText(self, wordname):d = Document(wordname)texts = []for para in d.paragraphs:texts.append(para.text)return textsdef msplit(self, s, separators=',|\.|\?|,|。|?|!'):return re.split(separators, s)def readDocx(self, docfile):print('*' * 80)print('文件', docfile, '加载中……')t1 = datetime.datetime.now()paras = self.getText(docfile)segs = []for p in paras:temp = []for s in self.msplit(p):if len(s) > 2:temp.append(s.replace(' ', ""))if len(temp) > 0:segs.append(temp)t2 = datetime.datetime.now()print('加载完成,用时: ', t2 - t1)self.showInfo(segs, docfile)return segsdef showInfo(self, doc, filename='filename'):chars = 0segs = 0for p in doc:for s in p:segs = segs + 1chars = chars + len(s)print('段落数: {0:>8d} 个。'.format(len(doc)))print('短句数: {0:>8d} 句。'.format(segs))print('字符数: {0:>8d} 个。'.format(chars))def compareParagraph(self, doc1, i, doc2, j, min_segment=5):p1 = doc1[i]p2 = doc2[j]len1 = sum([len(s) for s in p1])len2 = sum([len(s) for s in p2])if len1 < 10 or len2 < 10:return []lst = []for s1 in p1:if len(s1) < min_segment:continuefor s2 in p2:if len(s2) < min_segment:continueif s2 in s1:lst.append(s2)elif s1 in s2:lst.append(s1)count = sum([len(s) for s in lst])ratio = float(count) / min(len1, len2)if count > 10 and ratio > 0.1:print(' 发现相同内容 '.center(80, '*'))print('文件1第{0:0>4d}段内容:{1}'.format(i + 1, p1))print('文件2第{0:0>4d}段内容:{1}'.format(j + 1, p2))print('相同内容:', lst)print('相同字符比:{1:.2f}%\n相同字符数: {0}\n'.format(count, ratio * 100))return lstdef main():app = QApplication(sys.argv)ex = WordComparerApp()ex.show()sys.exit(app.exec_())if __name__ == '__main__':main()

使用截图

在这里插入图片描述

打包好的软件下载链接

文档查重器

结尾

如果觉得文章对你有用请点赞、关注 ->> 你的点赞对我太有用了
群内交流更多技术
130856474 <-- 在这里

http://www.yayakq.cn/news/513089/

相关文章:

  • 网上有哪些接单做效果图的网站中国航空港建设总公司网站
  • 剑网三奇遇查询网站怎么做房地产销售平台网站建设
  • 邢台做移动网站公司电话号码中交路桥建设有限公司是国企还是央企
  • 龙华区住房和建设局网站官网各种网站建设报价
  • 成都市 网站建设广州设计网站
  • 如何设置网站logo视觉上体验的网站
  • 家居网站开发项目计划书哪里有零基础网站建设教学服务
  • 烟台网站建设找三硕科技做网站经常用的字体有哪些
  • 福州 哈尔滨网站建设 网络服务定制网站建设成本
  • 手把手指导做网站传奇网址大全
  • 公司建设网站需求分析网盘wordpress
  • 同城的网站建设网站建设 北京昌平
  • 烟台的网站建设一起做业官方网站
  • 成都销售型网站手机怎么注册网站
  • 牡丹江林口县建设局网站往网站添加图片吗
  • 店铺设计风格有哪些做seo网站
  • 开电商网站需要多少钱网站系统维护中
  • 手机网站制作工具为什么博客需要wordpress
  • 网站解决访问量超载租木模板多少钱一平方
  • 四川门户网站建设管理规定网站登录后不显示内容
  • 有专门做ppt的网站吗永久免费asp空间申请
  • wordpress免费建站吗公司网站模板凡建站
  • 广东企业网站建设哪家好公司主页网站制作
  • 做彩票网站犯法不wordpress用户集成
  • 建网站要定制还是第三方系统icp备案号怎么填写
  • 电子商务网站建设实训步骤如何开通一个微商城
  • 丹阳网站建设案例信息门户网站建设
  • 即时灵感网站seo竞价推广
  • 手机网站打开微信号电销管理系统软件
  • 雪锐琴网站建设网站专题设计稿