Python项目:把数据以图片的形式发送到微信群中

背景

Boss要出一份数据,需要每天定时定点发送到微信干部群里面。之前我都是从后台导出数据,然后在Excel的基础表里面粘贴导出的数据,接着打开展示表,从表格中把数据复制出来,一张一张发到微信群中。这样就有这么几个缺点:

1、导出数据繁琐,如果从8个数据表中分别导出8份数据,每次都需要手动选择日期和条件,然后导出数据。

2、Excel在处理数据较大且公式比较多的原始数据时,表现不是很好,很卡。

3、每天花在这份数据上的时间过多,影响其他的分析工作。

于是我决定用Python把数据处理过程简化,因为任何因为数据处理而非分析造成的加班,都是无效加班。

于是我把我的工作流程拆解分为5个部分,然后分别对每个部分进行程序编写:

1、从系统中导出数据

2、从导出的数据中找出需求数据

3、把数据填写到表格中

4、把表格复制为图片

5、图片发送到微信群中

6、发送完之后用短信提醒我

从系统中导出数据

从系统中导出数据,我是利用Python request模块把我的cookie和我的表单信息post到系统当中,得到我要的下载链接,然后用pandas直接读取这个Excel下载链接,生成一个DataFrame。我是在征求过了系统研发同意之后才写的爬虫,如果各位谁想去爬取公司的数据,一定要去征求同意,以免造成不必要的问题。因涉及公司的信息,我就不放出我写的代码了。至此我得到了系统中的数据,并且已经把数据变成了易处理的DataFrame格式。

略过:)

从导出的数据中找出需求数据

我们已经从系统中找出原始数据,那么现在就需要对数据进行处理,这里就需要利用pandas的去处理数据。我这里涉及的操作有:

1、匹配数据。比如说系统中只有城市数据,但是我需要对省份进行筛选,于是我需要用原始数据和另一个数据进行匹配,相当于SQL中的left join。

2、筛选数据。筛选出广东省出发的所有出境线路的订单。

3、分类汇总。根据部门进行分类汇总,包括营收和交易额。


数据处理关系到结果数据的准确性


处理dataframe

map_province和map_depart是从系统中读取的两个映射表,一个城市-省份映射表,用于匹配二是目的地城市-部门映射表,用于匹配部门。

把数据填写到表格中

已经得到了所需要的数据了,那么就是看用什么作为载体,去发送数据。我还是沿用老习惯,用Python在Excel表格中填写查询到的数据。处理Excel的Python库有很多,有xlrd、xlwt、xluntils和pyExcelerator等库,但是我偏向于win32com,用这个库去操作Excel,基本上是跟VBA语法一致。

我需要填写的数据(简单版)
填写表格

函数fillData的作用是把保存在列表中的数据,一次填写在表格之中,他的四个参数表示:工作表、开始的位置、要填充的列表和需要填写的数据。dealExcel函数的作用是用来把数据填充进去。

把图片复制为图片

这个就很简单,先把复制的表格转化成图片,然后把图片复制到粘贴板上面,再利用PIL读取粘贴板上面的图片,接着保存到特定的文件夹中(存档)。

数据复制为图片,存在本地作为存档

图片发送到微信群中

有了本地图片之后,可以利用itchat把数据发送到特定的微信群中。

把数据发送到群里面

这个有很大的扩展性,你可以把你所有的程序都包含在这个函数里面,当你的微信机器人得到你的暗语,他就会自己运行程序,然后发出数据。也可以加一个while循环,每天隔一段时间发数据。

但是他的缺点也有很多,比如说对中文不友好、要微信扫码登录和偶尔断掉服务器,需要重新登录等等。但是不管怎样,如果你的工作沟通工具是微信,那它肯定是你的一大助力。

发完数据之后用短信提醒我

这个只是一个可选项,用来实时知道自己的数据是否发送。我用的twilio服务,只需要写几行代码就能做到发送信息给你的手机当中。

SMS服务的使用


最后成果

总结

任何关于数据处理的过程,很多都可以用程序去解决。我是一个比较“懒”的人,机械的工作当然是用机器去做,把时间留着去做一些更有意思的事情,比如分析数据。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 204,793评论 6 478
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 87,567评论 2 381
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 151,342评论 0 338
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 54,825评论 1 277
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 63,814评论 5 368
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,680评论 1 281
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 38,033评论 3 399
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,687评论 0 258
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 42,175评论 1 300
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,668评论 2 321
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,775评论 1 332
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,419评论 4 321
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 39,020评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,978评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,206评论 1 260
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 45,092评论 2 351
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,510评论 2 343

推荐阅读更多精彩内容