一种辅助整理WoS英文论文题录文档的方法(python-docx)
在寻找选题的灵感时,通常需要阅读大量论文。由于英语水平所限,阅读英文速度不够快,于是想到了一种辅助整理WoS英文论文题录文档的方法,从WoS导出标题、作者、来源、年份和摘要等信息,然后结合谷歌文档翻译和python-docx整理成Word文档,用于快速浏览论文主题、方法的分布,并快速定位到符合需求的高价值论文,最后再单独下载这些论文仔细阅读。
目录
1. WoS导出Excel题录
2. 机器翻译
3. 基于python-docx的文档生成与排版
4. 文档输出与整理
5. 不足之处与未来展望
1. WoS导出Excel题录
首先在Web of Science中检索文献,然后选择导出Excel格式。
在弹出的框中选择记录x到x,如果少于1000条可以一次性导出;记录内容选择包含摘要的选项。
2. 机器翻译
百度翻译文档需要会员,有道、WPS的文档翻译只支持Word、PPT、PDF等格式,不支持Excel表格。这里使用谷歌翻译Excel文档。
由于谷歌翻译只支持xlsx格式,需要先把xls重新保存成新的格式。
速度非常快,上传后几秒就可以下载译文。
3. 基于python-docx的文档生成与排版
把下载的译文命名为'savedrecs译文.xlsx',与原文件放在同一文件夹,使用Python程序整合两个文件并排版生成Word。
# -*- coding: utf-8 -*-
import pandas as pd
from docx import Document
from docx.enum.text import WD_ALIGN_PARAGRAPH
from docx.shared import Pt, RGBColor
from docx.oxml.ns import qndf = pd.merge(pd.read_excel('savedrecs.xlsx')[['Article Title', 'Authors', 'Source Title', 'Publication Year']], pd.read_excel('savedrecs译文.xlsx')[['文章标题', '来源标题', '抽象的']], left_index=True, right_index=True)[['Article Title', '文章标题', 'Authors', '来源标题', 'Source Title', 'Publication Year', '抽象的']]
df.dropna(inplace=True)
document = Document()
document.styles['Normal'].font.size = Pt(12) # 字体大小
document.styles['Normal'].font.name = 'Times New Roman' # 西文字体
document.styles['Normal']._element.rPr.rFonts.set(qn('w:eastAsia'), '宋体') # 中文字体
document.styles['Normal'].paragraph_format.alignment = WD_ALIGN_PARAGRAPH.JUSTIFY # 两端对齐
document.styles['Normal'].paragraph_format.line_spacing = 1.15 # 行距
document.styles['Normal'].paragraph_format.space_before = Pt(3) # 段前
document.styles['Normal'].paragraph_format.space_after = Pt(3) # 断后
document.styles['Normal'].paragraph_format.first_line_indent = document.styles['Normal'].font.size * 2 # 首行缩进# 增加标题,可能由于版本问题直接改样式不起作用,这里使用h、r2个变量来调整标题格式,分别是paragraph和run格式
def add_heading_func(text, level, font_size, font_color=RGBColor(0, 0, 0), font_bold=True, line_spacing=1.15, first_line_indent=0, space_before=6, space_after=6, en_font='Times New Roman', cn_font='宋体'):h = document.add_heading(level=level)r = h.add_run(text)r.font.size = Pt(font_size) # 字体大小r.font.color.rgb = font_color # 字体颜色r.font.bold = font_bold # 加粗r.font.name = en_font # 西文字体r._element.rPr.rFonts.set(qn('w:eastAsia'), cn_font) # 中文字体if level == 0: # 如果为大标题,居中,西文字体同中文字体h.paragraph_format.alignment = WD_ALIGN_PARAGRAPH.CENTERr.font.name = cn_fontelse: # 其他标题两端对齐h.paragraph_format.alignment = WD_ALIGN_PARAGRAPH.JUSTIFYh.paragraph_format.first_line_indent = r.font.size * first_line_indent # 首行缩进h.paragraph_format.line_spacing = line_spacing # 行距h.paragraph_format.space_before = Pt(space_before) # 段前h.paragraph_format.space_after = Pt(space_after) # 段后add_heading_func('论文题录整理', 0, 16, cn_font='微软雅黑')
add_heading_func('一、分类标题1', 1, 12, cn_font='微软雅黑', en_font='微软雅黑', font_bold=False)
add_heading_func('(一)分类标题2', 2, 12)for i in df.values: # 循环遍历题录表格add_heading_func(i[1] + '('+ i[0] + ')(' + str(i[5]) + ')', 3, 12, font_color=RGBColor(0x4f, 0x81, 0xbd))document.add_paragraph('来源:' + i[4] + '('+ i[3] + ')')document.add_paragraph('作者:' + i[2])document.add_paragraph(i[6])document.add_paragraph()document.save('论文题录整理.docx') # 保存文件
4. 文档输出与整理
Python生成的Word文档如下。
可将标题格式替换到样式中,方便后续进一步分类整理与排版。
5. 不足之处与未来展望
1. 谷歌翻译文档存在少量单元格没有被翻译的情况,原因未知,还需要手动对译文的文件进行一定的检查和修正;未来考虑自动识别未被翻译的内容,补充进行翻译;
2. 可能由于版本原因标题样式没法直接设置,修改到styles['Heading 1']中的样式不起作用,仍需少量的手工操作;
3. 分类整理目前全为手动,未来可考虑结合TextRank、LDA等算法辅助归类。
一种辅助整理WoS英文论文题录文档的方法(python-docx)相关推荐
- 一种辅助整理知网论文题录文档的方法(Excel、Word)
知网导出的题录文件通常用于NoteExpress.EndNote等文献管理软件,想要做成表格一览无余或是Word文档怎么操作呢? 继之前写过的一篇WoS英文题录翻译整理之后,本次尝试将知网导出的题录文 ...
- zotero中文期刊论文题录中姓名被逗号分开
zotero中文期刊论文题录中姓名被逗号分开,可以通过茉莉花插件进行合并,具体操作如下: 1.选中需要合并姓名的题录,可多选: 2.鼠标右击,选择"小工具": 3.选择" ...
- atitit 方便搜索的文档文章结构框架.docx 目录 1.1. 三种搜索模式 tree hash关键词模式 关联搜索,对应的三种索引 1 1.2. 好的标题规范与副标题 1 1.3. Tr
atitit 方便搜索的文档文章结构框架.docx 目录 1.1. 三种搜索模式 tree hash关键词模式 关联搜索,对应的三种索引 1 1.2. 好的标题规范与副标题 1 1.3. Tre ...
- java计算机毕业设计腾讯网游辅助小助手源代码+数据库+系统+lw文档
java计算机毕业设计腾讯网游辅助小助手源代码+数据库+系统+lw文档 java计算机毕业设计腾讯网游辅助小助手源代码+数据库+系统+lw文档 本源码技术栈: 项目架构:B/S架构 开发语言:Java ...
- java计算机毕业设计腾讯网游辅助小助手源代码+数据库+系统+lw文档1
java计算机毕业设计腾讯网游辅助小助手源代码+数据库+系统+lw文档1 java计算机毕业设计腾讯网游辅助小助手源代码+数据库+系统+lw文档1 本源码技术栈: 项目架构:B/S架构 开发语言:Ja ...
- 四种生成和解析XML文档的方法详解(介绍+优缺点比较+示例)
众所周知,现在解析XML的方法越来越多,但主流的方法也就四种,即:DOM.SAX.JDOM和DOM4J 下面首先给出这四种方法的jar包下载地址 DOM:在现在的Java JDK里都自带了,在xml- ...
- 计算机会考作业,计算机会考Excel操作题作业文档.doc
计算机会考Excel操作题作业文档.doc 说明:Execl 操作题目及其要求都在这里,根据题目,要求我们一一完成下面各题,如果做下来不熟练,还要做多次,因为考试时是没有提示信息的. (1)新建一个工 ...
- java计算机毕业设计-高中辅助教学系统-源程序+mysql+系统+lw文档+远程调试
java计算机毕业设计-高中辅助教学系统-源程序+mysql+系统+lw文档+远程调试 java计算机毕业设计-高中辅助教学系统-源程序+mysql+系统+lw文档+远程调试 本源码技术栈: 项目架构 ...
- java扫描接口_一种扫描接口并生成可调用API接口文档的方法与流程
本发明属于JavaWeb开发技术领域,涉及一种API接口文档的生成方法,尤其是一种扫描接口并生成可调用API接口文档的方法. 背景技术: API(Application Programming Int ...
- 怎么把jpg转换html,一种将图片转成HTML文档的方法与流程
本发明涉及网页开发技术领域,特别是一种将图片转成HTML文档的方法. 背景技术: 网页设计/美工人员通常将一个网页设计导出成图片的形式:网页前端人员负责将图片转成前端HTML供后端人员开发功能:前端人 ...
最新文章
- python函数用法详解2(变量的作用域(全局变量、局部变量)、共享全局变量、函数返回值、函数的参数(位置参数、关键字参数、默认参数、不定长参数)、拆包、交换变量值、引用、可变和不可变类型)
- 2019年全球企业人工智能发展现状分析报告
- Drools学习 入门实例
- hibernate inverse属性的作用
- 24期分期免息可以提前还吗?
- 44 万条数据揭秘:如何成为网易云音乐评论区的网红段子手?
- bzoj 1675: [Usaco2005 Feb]Rigging the Bovine Election 竞选划区(暴力)
- 【Dubbo源码阅读系列】服务暴露之本地暴露
- 计算机汉字编码输入码,汉字编码、输入系统和码本
- 【元胞自动机】基于元胞自动机模拟交通流仿真含Matlab源码
- HiJson工具 火狐浏览器中的jsonHandle插件(以及乱码问题的解决)--来转换json串的格式
- PHP语言之MySQL操作
- Android 面试题中高级
- 部署skyWalking
- 神经网络的基本结构介绍
- 手机号批量查询归属地方法及其简介批量查询号码归属地方法
- 2019南昌网络赛 H. The Nth Item(广义斐波那契数列求通项公式模板)(二次剩余+分块)
- 端口映射工具网络通-个人电脑也能作为服务器
- 当网站不允许上传asp cer cdx htr文件时的一个解决方法!
- Android _自定义芝麻积分(装逼神器)