'''
处理表格并将作者与作者id形成一个字典格式,以便第二步直接根据作者名称直接拿作者id
'''
import pandas as pd
import json
# 读取excel文件并读取其中指定的工作表,并指定第几行为列名
df = pd.read_excel('year2020-2000authors.xlsx',sheet_name='Sheet2',header= 0)
# 取出需要处理的三列
data = pd.DataFrame(df,columns=['Authors','ID','DOI'])
# 读取文件列名
title = data.columns
# 获取行的索引
items = {}
for i in data.index.values:
# 根据一行的索引取出一行的数据并根据title转化成字典
df_dict = df.loc[i, title].to_dict()
Authors = df_dict.get('Authors').split(',')
ID = df_dict.get('ID').split(';')
# 处理列表中的空字符串
ID = list(filter(None,ID))
for j in range(len(Authors)):
Authorid = ID[j]
Author = Authors[j]
items[Author] = Authorid
itemsz = json.dumps(items)
with open('./authorid.json','w',encoding='utf-8') as f:
f.write(itemsz)
10-26
6626
![](https://csdnimg.cn/release/blogv2/dist/pc/img/readCountWhite.png)