任务背景:
在网络上获取的ccf目录的格式是PDF,但是要进行数据分析时,PDF格式的数据是不符合要求的,因此需要将pdf格式转化为excel格式
任务目的:
将pdf格式的CCF目录转化为excel格式,并且备注上等级和所属的领域
包含的数据字段有:全称,出版商,等级,所属领域
解决过程:
1.首先先到网站上下载pdf格式的CCF目录,这个很容易获取(附件中已附上在博客中的文件可以找到)
2.利用网上的在线PDF转换网站此次试验用的是http://app.xunjiepdf.com/pdf2excel(迅捷在线PDF格式转化)
3.下载转好的文件
4.将文件中的全称和出版商两行复制下来(只包含数据),导入到filename文件中(filename为自定义文件名),因为PDF文件中的数据不是规范的excel格式,因此还需要进行数据处理。
5.运行happy.py,输入filename。
6.就能在F:/paper/ccf/filename2.xls中获得结果
7.得到的结果只是全称和出版社,关于她的等级和所属的领域还需要手动输入。用excel可以很快的完成。大部分的数据都是好的,但是有一些数据因为格式过于错乱,需要手动检查纠正。
8.附件中即是获取的结果。
以下是happy.py代码
1 import xlrd 2 import xlwt 3 name = raw_input("please input the name:\n") 4 work = xlwt.Workbook() 5 sheet = work.add_sheet(‘test‘) 6 data = xlrd.open_workbook("F:paper/ccf/%s.xlsx" % name) 7 table = data.sheet_by_index(0) 8 nrows = table.nrows 9 ncols = table.ncols 10 row = 0 11 col = 0 12 i = 0 13 while i < nrows: 14 if table.cell(i, 1).value == ‘‘ and table.cell(i + 1, 0).value == ‘‘: 15 temp_name = table.cell(i, 0).value + ‘ ‘ + table.cell(i+2, 0).value 16 temp_organization = table.cell(i+1, 1).value 17 sheet.write(row, 0, temp_name) 18 sheet.write(row, 1, temp_organization) 19 row += 1 20 i += 3 21 else: 22 temp_name = table.cell(i, 0).value 23 temp_organization = table.cell(i, 1).value 24 sheet.write(row, 0, temp_name) 25 sheet.write(row, 1, temp_organization) 26 row += 1 27 i += 1 28 name = name + "2" 29 work.save("F:paper/ccf/%s.xls" % name) 30 del nrows 31 del ncols
时间: 2024-10-14 05:50:39