物理超好玩

  • 首页
  • Noip学习助手
  • 书法字典APP下载
  • 资源列表
  • 格式化代码
  • 习题答案
  • 关于
物理超好玩
真诚面对自己
  1. 首页
  2. 程序设计
  3. 正文

格式混乱的百度文库复制文本格式化工具

2020年12月30日 925点热度 2人点赞 0条评论
从百度文库复制的文本格式混乱。如下图所示:

每次复制的文本,都需要花些时间逐行整理,很是费时。为了自动化的解决这一问题,我写了一段python代码。代码如下:
'''
从百度文库复制的文本格式混乱,本工具用来对混乱的文本进行整理
'''
import os
import re
import tkinter as tk
from tkinter import filedialog

root = tk.Tk()
root.title = "百度文库复制文本格式化工具"

filename = tk.StringVar()
info = tk.StringVar()

txt_filetype = [('文本文件', '.txt')]

def selectFile():
    filepath = filedialog.askopenfilename(parent=root,
                                          initialdir=os.getcwd(),
                                          title="请选择文本文件",
                                          filetypes=txt_filetype)
    filename.set(filepath)  # 设置变量filename的值

def fileSave():
    txtfilepath = filename.get()

    if txtfilepath == '':
        info.set("未选择文件")
        return

    if not os.path.exists(txtfilepath):
        info.set("文件不存在")
        return

    if not txtfilepath.endswith(".txt"):
        info.set("文件不是文本文件")
        return

    with open(txtfilepath, 'r', encoding='utf-8') as f:
        ms = f.readlines()

    data = ''
    me = ''
    re_end = re.compile('[。:?!…]$')

    for s in ms:
        s2 = s.strip()
        me += s.rstrip()
        if re_end.search(s2):
            data += me + '\n'
            me = ''
    if me != '':
        data += me

    outpath = txtfilepath[:-4] + '_ft' + '.txt'
    with open(outpath, 'w', encoding='utf-8') as f:
        f.write(data)

    info.set(outpath)  # 设置变量filenewname的值


# 构建“选择文件”这一行的标签、输入框以及启动按钮,同时我们希望当用户选择图片之后能够显示原图的基本信息
tk.Label(root, text='选择文件').grid(row=1, column=0, padx=5, pady=5)
tk.Entry(root, textvariable=filename).grid(row=1, column=1, padx=5, pady=5)
tk.Button(root, text='打开文件', command=selectFile).grid(row=1, column=2, padx=5, pady=5)

# 构建“保存文件”这一行的标签、输入框以及启动按钮
tk.Label(root, text='保存文件').grid(row=2, column=0, padx=5, pady=5)
tk.Button(root, text='保存', command=fileSave).grid(row=2, column=1, padx=5, pady=5, sticky="w")

# 构建“选择目录”这一行的标签、输入框以及启动按钮
tk.Label(root, text='信息').grid(row=3, column=0, padx=5, pady=5)
tk.Label(root, textvariable=info).grid(row=3, column=1, padx=5, pady=5, columnspan=2, sticky="w")

root.mainloop()
下面是运行时的窗口

使用方法也很简单,先点击打开文件,然后点保存就可以了。
混乱的百度文库复制文本经过整理过后的格式如下图:
 
如上所示,文本已经被分段整理好了。
上面的代码的原理很简单,概述如下:
对混乱的百度文库复制文本逐行判断,如果在这一行的后面发现了。:?!…句子结束标点,则进行换行,否则不换行。

要想运行上面的python代码,需要安装python,下载地址:

https://www.python.org/


 

相关文章:

  1. 用QT开发百度文库文本下载工具
  2. 用Python下载PHET互动仿真程序
  3. 利用JavaCV+OpenCV的ANN_MLP神经网络训练识别MNIST手写数字
  4. 在JavaCV中合并两个Mat
  5. 用OpenCV的K-Means聚类对书法作品进行单字分割
  6. IDEA用Gradle打包GUI Form为可执行的jar

订阅号“物理超好玩”
标签: 格式化 格式混乱 百度文库
最后更新:2020年12月30日

坚持

真诚的面对自己的内心。 确立志向;全力准备;清净无扰,最终成功。 尊重自我,做自己最擅长的事情,做自己最喜欢的事情。

点赞
下一篇 >

坚持

真诚的面对自己的内心。 确立志向;全力准备;清净无扰,最终成功。 尊重自我,做自己最擅长的事情,做自己最喜欢的事情。

分类
  • NOIP (1)
  • 习题讲解 (9)
  • 克服沉迷 (2)
  • 游戏危害 (1)
  • 程序设计 (10)
  • 软件作品 (2)
标签聚合
串联电路 计算题 OpenCV gradle 电学 Idea 初中物理 javacv
最新 热点 随机
最新 热点 随机
中国游戏防沉迷简史 转移注意力 认识游戏的危害 U盘随身便携Git http服务器 IDEA用Gradle打包GUI Form为可执行的jar 运用浮力求密度解题思路
初中物理电学计算题第四讲:数据挖掘 用QT开发百度文库文本下载工具 已知两组数据列方程组解题补充习题 用Python下载PHET互动仿真程序 认识游戏的危害 初中物理电学计算题第五讲:n个电阻已知n+1个量必定可解

COPYRIGHT © 2021 物理超好玩. ALL RIGHTS RESERVED.

THEME KRATOS MADE BY VTROIS

豫ICP备16037997号-2