被处理:批量论文docx,具有固定格式/结构。
提取:中英文论文题目(多行)及全部作者(一行),并写入excel
定位条件:
题目-黑体加粗,作者-紧跟题目后
中文题目在首行开始
英文题目在DOI行下一行开始,某些具有空行

import os
import pandas as pd
import docx#提取中文标题及全部作者
def Ctitle_author(filepath):doc=docx.Document(filepath)ps=doc.paragraphsCtitle='' #赋空值,用于后面累加标题字符串Cauthor=''  #也最好赋值变为局部变量,防止与全局变量混淆for p in ps:if p.runs[0].bold==True:  #文本是否黑体Ctitle+=p.textcontinueelse:Cauthor=p.textbreakreturn Ctitle,Cauthor#提取docx文档中的英文标题及全部作者
def Etitle_author(filepath):doc=docx.Document(filepath)ps=doc.paragraphsEtitle=''Eauthor=''doi=False   #定位英文题目起始flagfor p in ps:if doi ==True:if len(p.text) < 3:  #是否空行或空格continueelse:if p.runs[0].bold==True:Etitle+=p.textcontinueelse:Eauthor=p.textbreakif 'DOI' in p.text:doi=Truecontinuereturn Etitle,Eauthor#提取文件名字中的论文排版序号及接收编号
def order_num(filename):sp=filename.split('-',1)order=str(sp[0])num=str(sp[1][:9])return order,numif __name__=='__main__':path=r'E:\Desktop\tempr\杂志\2022-02\志2022年2期(交付排版)2'xls=r'E:\Desktop\tempr\杂志\2022-02\info.xlsx'filenames=os.listdir(path)twolis=[['序号','编号','题目','全部作者','title','authors']]for filename in filenames:if filename.endswith('.docx'):filepath=os.path.join(path,filename)#用变量接收函数返回值,两者名字最好不同order2,num2=order_num(filename)  Ctitle2,Cauthor2=Ctitle_author(filepath)Etitle2,Eauthor2=Etitle_author(filepath)lis=[order2,num2,Ctitle2,Cauthor2,Etitle2,Eauthor2]#for i in lis:#  print(i)twolis.append(lis)df=pd.DataFrame(twolis) #二维列表转为DataFranedf.to_excel(xls,index=False,header=0) #header=0二维列表的第一个元素充当列名print('done!')

批量提取docx文档中特定样式(如黑体加粗)及位置的文本相关推荐

  1. Python使用标准库zipfile+re提取docx文档中超链接文本和链接地址

    推荐教材: <Python程序设计实用教程>,ISBN:978-7-5635-6065-3,董付国,北京邮电大学出版社 教材封面: 全国各地新华书店有售 京东购买链接: 配套资源:教学大纲 ...

  2. html5多个图片位置_Python使用标准库zipfile提取docx文档中所有图片

    清华科技大讲堂免费直播课预告: 免费直播课|Python数据可视化与科学计算可视化案例分享,5月28日晚20:00-21:30============ 哔哩哔哩网站免费视频观看地址: 董老师在哔哩哔哩 ...

  3. Python使用标准库zipfile提取docx文档中所有图片

    清华科技大讲堂免费直播课预告: 免费直播课|Python数据可视化与科学计算可视化案例分享,5月28日晚20:00-21:30 ============ 哔哩哔哩网站免费视频观看地址: 董老师在哔哩哔 ...

  4. 办公室小姐姐的福利!用Python批量提取word文档中的表格和图片内容

    点上方"菜鸟学Python",选择"星标" 第491篇原创干货,第一时间送达 最近有许多小伙伴想要一些自动化办公的福利小程序,今天就满足大家的需求.日常的办公过 ...

  5. python批量提取word文档中的图片(含图片格式转换和GUI)

    作者:小小明 文章目录 doc格式批量转为docx 批量提取docx文档的图片 批量图片格式转换 完整代码 GUI图形化工具开发 打包exe 给GUI加入进度条 日常工作中,领导要求你将一份 Word ...

  6. python docx 提取图片_Python提取docx文档中所有嵌入式图片和浮动图片

    术语: 浮动图片,是指在Word文档中位置可以自由移动.可以环绕文字或放置于文字上方.下方的图片,不占文档流的位置,可以和文字或嵌入式图片重叠. 嵌入式图片或行内图片,和文档中的文字一样占文档流的位置 ...

  7. Python批量修改Word文档中特定关键字的颜色

    关于Word文件的大致结构请参考使用Python写入docx文件并控制字体颜色 代码功能:读取docx文档中的文字,在尽量不影响原来字体样式的情况下,只把特定的文字都修改为红色. 表格中的文字请参考P ...

  8. 使用Python批量提取Word文档中的图片

    1.导入需要的包 import zipfile import shuti 2.设置文档路径和图片路径 ,并用zipfile读取Word文件 doc_path = './a.docx' #在这里更换你想 ...

  9. Python批量检查docx文档中文本框的内容是否正确

    推荐教材:<Python程序设计基础与应用>(ISBN:9787111606178),董付国,机械工业出版社,2018.8出版,2021.7第12次印刷 图书详情: 配套资源: 用书教师可 ...

最新文章

  1. Springcloud Feign原理
  2. 常州IBMV3700数据恢复成功
  3. Spark 精品文章转载(目录)
  4. 显示桌面,原来这么简单的
  5. deepin安装windows虚拟机_Deepin Linux V20系统通过安装wine实现运行windows程序
  6. C语言字母的压缩,C语言字符串快速压缩算法代码
  7. cjuiautocomplete ajax,Yii CJuiAutoComplete小部件:空响应消息事件
  8. nexus build docker private registry
  9. 【HarmonyOS】【Json解析】ZSON 与 HiJson 使用
  10. php简历制作网站,PHP制作word简历
  11. gif图片解析与生成(GIF+文字动效)
  12. 【记录】凯酷84说明书
  13. C#学习笔记 正则表达式
  14. 雷军:编程不仅仅是技能,更是一种艺术!
  15. 苹果 M1芯片运行Android模拟器
  16. Nim博弈和威佐夫博弈 Return of the Nim
  17. 2020 ACM杰出科学家名单出炉:叶杰平、崔鹏等26位华人学者上榜
  18. 松下幸之助语录-2011
  19. 怎么和女生找话题?四个技巧让你话题不断
  20. 江苏省重点软件企业信息汇总 排名不分先后

热门文章

  1. mysql插入中文问题解决,干货!
  2. jQuery获取父元素及父节点的方法小结
  3. (二)unity优化方案:利用BMFont工具制作font字体(在UGUI和NGUI中使用)
  4. 苹果手机的图书,如何添加电脑上的书籍如PDF
  5. unity升级版本后华为手机特效问题
  6. Ubuntu 安装 OpenMPI
  7. 已知3个人说了真话,1个人说的是假话,通过编程确定说假话的人
  8. 量化交易软件有哪些重要对象?
  9. 阿里开源的Java诊断工具——Arthas
  10. [Unity官方直播] 详解Unity Asset的一生——学习笔记(一)