项目场景:
改了个bug,问题是最常见的bug,如下这样的
问题描述&原因分析
我逐条排除中间生成的文件,发现吧标题放进去后,这里出现的截断,但明明之前读文本,一条条加入存入中间文本也没有截断,所有,还是觉得在最初的读取文本中解决这个问题。后面Readlines时候也确确实实是单独存了一个字符串,在list中也单独存了一个值,所有我读取list[0]时,里面没有Abstract这个关键词,因此spilt(“Abstract”)时候,没有Abstract,从而我要读取以Abstract断开前字符串时候,就读不到了。
# 初步数据清理从abstract开始删除acknowedge以后字段
a = 0
for i in range(len(text)):
if text[i] == "Tiltle":
a = i
for i in range(a+1,len(text)):
if text[i] == 'Introduction':
break
else:
paragraphsText_new.append(text[i].strip())
解决方案:
在最初的里面,加一个去除换行,我也不清楚文本里面结构,虽然有的格式不是这样,但这里都加了一个.replace(‘\n’,’ ')
def getParagraphsText(doc,Namedocx):
paragraphsText = []
paragraphsText_new = []
for i in range(0,len(doc.paragraphs)):
print("这是:",doc.paragraphs[i].text)
for i in range(0, len(doc.paragraphs)):
paragraphsText.append(doc.paragraphs[i].text)
text = ([x.strip() for x in paragraphsText if x.strip() != ''])
# 初步数据清理从abstract开始删除acknowedge以后字段
a = 0
for i in range(len(text)):
if text[i] == "Tiltle":
a = i
for i in range(a+1,len(text)):
if text[i] == 'Introduction':
break
else:
paragraphsText_new.append(text[i].replace('\n',' ').strip())
最后就没有问题了。