我是靠谱客的博主 从容黑米,最近开发中收集的这篇文章主要介绍python处理Excel数据串行串列问题,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

接到一个任务,要获取药监局所有的进口药材,国产药材名录。写好爬虫,一共有十几万条的数据,爬下来一看,简直不忍直视。各种串列,有的在第一行,有的在第三行,有的第五行,没有任何规律可言。要想用Excel处理,难度很大啊,所以就写了python脚本来处理了。

思路是这样的:

1.用python读取整行的数据

2.把一整行的数据连成一个字符串

3.找出规律(比如表中每一行都有几个关键字,如药品本位码:这几个字),用re正则匹配找出来。

4.重新写入Excel就可以了。

下面的代码不是处理这个表格的代码,因为后来又做了其他的项目,规律不一样(这次是“[]”),所以改了代码了。不过思路是一样的。可以借鉴一下。

 

import xlrd
import re
file0=xlrd.open_workbook(r'C:UsersDesktop12.xlsx')
table0=file0.sheet_by_name('yaojianjuqicai')
nrows=table0.nrows
nclos=table0.ncols
for i in range(1,nrows):
name=table0.row_values(i)
print(i)
str = ''.join('%s'%i for i in name)#连成一个字符串
#print(str)
dd=re.findall(r'^[(.*?)]$',str,re.S)
#dd=list(dd[0])#如果写入Excel的时候遇到tuple不可写入的报错,就用这个。
print(dd)
for i in dd:
out='{},'.format(i)
with open('yjjqicainew.csv','a+')as f:
f.write(out)
with open('yjjqicainew.csv', 'a+')as f:
f.write('n')

 

 

 

看看处理之后的效果吧

总结经验:

其实以上问题在爬虫的时候,写好代码就可以避免了,我因为怕网站的数据不规范,所以爬下来才修改。

建议在爬的时候,加入一些符号,比如&号等,后面可以用Excel分列,十分方便。

最后

以上就是从容黑米为你收集整理的python处理Excel数据串行串列问题的全部内容,希望文章能够帮你解决python处理Excel数据串行串列问题所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(52)

评论列表共有 0 条评论

立即
投稿
返回
顶部