资讯专栏INFORMATION COLUMN

python 读取excel文件并写入json

codeKK / 1723人阅读

摘要:内容代码打开文件读取第一个工作表统计行数微信文章属性每一行数据形成一个列表列表形成字典返回所有数据循环打开每个微信文章属性按时间升序排列写入文件显示中文缩进为微信写文件

excel内容:

代码:

import xlrd
import json
import operator
 
 
def read_xlsx(filename):
    # 打开excel文件
    data1 = xlrd.open_workbook(filename)
    # 读取第一个工作表
    table = data1.sheets()[0]
    # 统计行数
    n_rows = table.nrows
 
    data = []
 
    # 微信文章属性:wechat_name wechat_id title abstract url time read like number
    for v in range(1, n_rows-1):
        # 每一行数据形成一个列表
        values = table.row_values(v)
        # 列表形成字典
        data.append({"wechat_name": values[0],
                     "wechat_id":   values[1],
                     "title":       values[2],
                     "abstract":    values[3],
                     "url":         values[4],
                     "time":        values[5],
                     "read":        values[6],
                     "like":        values[7],
                     "number":      values[8],
                     })
    # 返回所有数据
    return data
 
 
if __name__ == "__main__":
    d = []
    # 循环打开每个excel
    for i in range(1, 16):
        d1 = read_xlsx("./excel data/"+str(i)+".xlsx")
        d.extend(d1)
 
    # 微信文章属性
    # 按时间升序排列
    d = sorted(d, key=operator.itemgetter("time"))
    # 写入json文件
    with open("article.json", "w", encoding="utf-8") as f:
        #ensure_ascii=False显示中文,indent=2缩进为2
        f.write(json.dumps(d, ensure_ascii=False, indent=2))
 
    name = []
    # 微信id写文件
    f1 = open("wechat_id.txt", "w")
    for i in d:
        if i["wechat_id"] not in name:
            name.append(i["wechat_id"])
        f1.writelines(i["wechat_id"])
        f1.writelines("
")
 
    print(len(name))

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/42448.html

相关文章

  • Python数据分析入门之pandas总结基础(二)

    摘要:一大熊猫世界来去自如的老生常谈,从基础来看,我们仍然关心对于与外部数据是如何交互的。函数受限制问题唯一重要的参数,标志着一个的第个页将会被取出。数据分析入门之总结基础一欢迎来翔的博客查看完成版。 一.大熊猫世界来去自如:Pandas的I/O 老生常谈,从基础来看,我们仍然关心pandas对于与外部数据是如何交互的。 1.1 结构化数据输入输出 read_csv与to_csv 是⼀对...

    verano 评论0 收藏0
  • python 做数据分析:pandas 的 excel 应用初探

    摘要:今天要分享的是,用来写。数据处理环节效率低下,易受干扰。问题排查难以溯源。一旦数据报告有误,想要定位问题所在,常常需要从头开始复盘。结果和上面结果结构是一致的。这是官网的文档,但是却不完全适用目前的场景。 大毛 岂安科技业务风险分析师 多年订单业务反欺诈经验,负责岂安科技多款产品运营工作。 上回笔者分享过一些 pandas 的常用数据查询语法,但是数据查询对于 pandas 而言只是冰...

    tunny 评论0 收藏0
  • python 做数据分析:pandas 的 excel 应用初探

    摘要:今天要分享的是,用来写。数据处理环节效率低下,易受干扰。问题排查难以溯源。一旦数据报告有误,想要定位问题所在,常常需要从头开始复盘。结果和上面结果结构是一致的。这是官网的文档,但是却不完全适用目前的场景。 大毛 岂安科技业务风险分析师 多年订单业务反欺诈经验,负责岂安科技多款产品运营工作。 上回笔者分享过一些 pandas 的常用数据查询语法,但是数据查询对于 pandas 而言只是冰...

    aervon 评论0 收藏0
  • python 做数据分析:pandas 的 excel 应用初探

    摘要:今天要分享的是,用来写。数据处理环节效率低下,易受干扰。问题排查难以溯源。一旦数据报告有误,想要定位问题所在,常常需要从头开始复盘。结果和上面结果结构是一致的。这是官网的文档,但是却不完全适用目前的场景。 大毛 岂安科技业务风险分析师 多年订单业务反欺诈经验,负责岂安科技多款产品运营工作。 上回笔者分享过一些 pandas 的常用数据查询语法,但是数据查询对于 pandas 而言只是冰...

    张宪坤 评论0 收藏0
  • Python3网络爬虫实战---31、数据存储:文件存储

    摘要:如果该文件已存在,文件指针将会放在文件的结尾。运行结果以上是读取文件的方法。为了输出中文,我们还需要指定一个参数为,另外规定文件输出的编码。 上一篇文章:Python3网络爬虫实战---30、解析库的使用:PyQuery下一篇文章:Python3网络爬虫实战---32、数据存储:关系型数据库存储:MySQL 我们用解析器解析出数据之后,接下来的一步就是对数据进行存储了,保存的形式可以...

    dreamans 评论0 收藏0

发表评论

0条评论

最新活动
阅读需要支付1元查看
<