Python自动化之手把手教你处理处理账单

本文首发公众号:CoXie聊办公自动化,
致力于打造别人家的公众号

原文地址:[请点击这里超链接]

前言

 很多人都不知道怎么处理或者是不知道自己每个月的钱的去处在哪。故本次为大家带来如何用Python处理自己的微信账单(支付宝账单),干货满满。
 这里以4月份的200条数据为例子,数据仅供参考

如何导出自己的微信账单?

百度的教程已经不适用,具体教程请看下方

  • 1.找到微信支付
  • 2.点击我的账单
  • 3账单明细
  • 4.右上角的常见问题
  • 5.最上方的下载账单
  • 6.点击用于个人对账
  • 7.输入邮箱地址

稍后账单会自动发送至邮箱中

拿到账单后如何进行下一步操作?

首先,不管是写什么代码,都必须要知道自己需要用到的第三方库是什么,本次会用到以下第三方库,请预先导入。

  • pandas
  • openpyxl
  • time

CMD导入方式:

  • pip install pandas
  • pip install openpyxl
  • pip install time

Pycharm 导入方式:

在这里插入图片描述

处理xlsx文件

首先,肯定还是先读取文件,在这我们用load_workbook(文件名 +.xlsx) 进行读取目标Excel
在这里插入图片描述
接下来,获取当前工作的表,在这里不用关心表名是什么,因为利用

wb = load_workbook(file_name + '.xlsx')
ws = wb.active

已经自动获取了。

删除无关数据
ws.delete_rows(1,16) #删除第 1 行起的 16 行(含起始)
ws.delete_cols(9,2) #删除第 9 列起的 2 列(含起始)

在这里为了代码效果的演示明显,我已经将上面处理好的数据,另存为一个xlsx文件。
文件名称为:file_name + 现在的时间 +.xlsx
剩下的就是处理你想获取的数据,当然,处理的数据肯定以上面处理好的xlsx文件进行二次处理。

二次处理xlsx

data1=test[-test['交易类型'].str.contains('微信红包')] #然后再删除列里有微信红包的数据
data1=data1[-data1['交易类型'].str.contains('转入零钱通')] #然后再删除列里转入零钱通里面的

最后,将二次处理的数据重新保存一份,保存格式还是file_name + 现在的时间 +.xlsx

后言

本次的分享到这里已经结束了,创作不易,请勿抄袭,转载请告知博主或注明转载来处
最后,完整代码在这里

import pandas as pd
import openpyxl
from pandas import Series,DataFrame
from openpyxl import *
import time, datetime

file_name = '文件名'
now = time.strftime("%Y%m%d%H%M%S", time.localtime())
wb = load_workbook(file_name + '.xlsx')
ws = wb.active
ws.delete_rows(1,16) #删除第 1 行起的 16 行(含起始)
ws.delete_cols(9,2) #删除第 9 列起的 2 列(含起始)
wb.save(file_name + ' - ' + now + ' - 1 - 已删除无效行和列.xlsx')

test = pd.read_excel(file_name + ' - ' + now + ' - 1 - 已删除无效行和列.xlsx')
data1=test[-test['交易类型'].str.contains('微信红包')] #然后再删除列里有微信红包的数据
data1=data1[-data1['交易类型'].str.contains('转入零钱通')] #然后再删除列里转入零钱通里面的
data1.to_excel(file_name + ' - ' + now + ' - 2 - 红包和零钱通.xlsx', index=False) #将处理后的结果写入新表

print("亲,已全部删除无效数据")

彩蛋

在公众号后台,都有小伙伴问:有没有什么好的毕设项目? 相信这也是很多小伙伴想要的。还不收藏点赞吗?

原文地址:https://www.cnblogs.com/CoXieLearnPython/p/14868384.html