需求:
把如下图所示的文件名中,股票代码code和年份year提取出来
一个并不是那么准,但也还过的去的提取方法:
1、提取文件名
import glob
csreportlist = glob.glob("C:\\Users\\sz_wh\\Desktop\\【data】\\社会责任报告\\*.pdf")
2、文件名处理
因为分析了文件名的数据,发现有三种很常见的情况:
“2019社会责任报告”
“2019年度社会责任报告”
“2019企业社会责任报告”
这里,先把“企业”删去,就剩下两种情况
# 去除不必要的路径名
csreportlist = [x.split("\\")[-1] for x in csreportlist]
# 去除“企业”
csreportlist = [x.replace("企业","") for x in csreportlist]
3、提取股票代码和年份
用正则表达式提取股票代码
用粗糙的方法提取年份(此处够用,因为也就1w份不到)
import re
codelist = []
yearlist = []
pdfname = []
for csreport in csreportlist:
# 用正则表达式提取股票代码
code = re.findall("[0-9]{6}",csreport)
year =