首页 文章 精选 留言 我的

精选列表

搜索[文档复制],共10000篇文章
优秀的个人博客,低调大师

用 Python 批量生成销售日报,告别每天复制粘贴

销售日报需要汇总各渠道的订单数、销售额和客单价。渠道超过十个以后,手工把数据从各平台抄进同一张 Excel 就成了明显负担:耗时、易错、且无法追溯数据来源。以 11 个渠道、日均 42 分钟手工汇总估算,每月仅此一项就占用约 15 个小时。本文用一个可落地的 Python 脚本,把这份日报改成每天定时自动生成。流程拆成取数、归一化、算指标、写 Excel、调度五步,代码可直接复用,数据源与代理配置集中管理,渠道字段变动时只改对应函数。先说清日报的结构:左侧各渠道一行,右侧是当日订单数、销售额、客单价,末尾合计并附环比。格式稳定是自动化的前提,若格式频繁变动,脚本反而增加维护成本。先把事情拆开一份"日报"其实就三件事。第一,数据从哪儿来。第二,拿回来怎么算。第三,算完怎么落盘成 Excel 并发出去。这三步我分开写,后面渠道改字段或者老板要加指标,都不用动全身。有人会问,为什么不直接用 pandas 一口气读库写表完事。因为我们的情况是混合数据源,没法一刀切。公司自有订单系统在公司内网,直接连库拉就行。另外两个渠道的销量要走平台开放接口,而这个接口按出口 IP 限流,办公室那条固定 IP 请求两轮就被封半小时。这两类数据源的取数逻辑完全不同,硬塞一个函数里只会越写越乱。也有人推荐直接用 Excel 的 Power Query。试过,图形化界面点起来爽,但渠道一多,每个查询的刷新顺序、依赖关系全藏在界面背后,出了错没法 diff,也没法进版本库。脚本丑是丑,但每一行都在眼前,新人接手看代码就行,不用我坐在旁边讲半小时。抓数据,并且要能重试网络这种事你控制不了,别指望一次就通。接口超时、平台抖一下、代理偶尔抽风,都是常态。我用了 tenacity 做重试,最多试三次,失败之间退避等待,避免一拥而上把接口打挂。报表自动化为什么绕不开代理先把背景讲透。日报要拉十几个渠道,其中有几个是淘宝、抖音这类开放平台,它们的订单接口都带反爬。办公室那条固定出口 IP,请求两轮就被限流半小时。我一开始加了 sleep 退避,没用,平台认的是 IP 不是频率。后来接了亿牛云的动态转发代理(隧道代理)。它背后是一个很大的 IP 池,只配一个固定入口,每次转发自动换出口 IP,对目标平台来说每次请求都来自不同地方,而且是匿名的,拉数据跟正常访问没两样。我不用自己维护 IP 池,某个 IP 被封也不会全盘停摆。日报一天几十兆流量,动态转发按月付,成本比自己租服务器搭池子低很多,这也是我没自己养 IP 的原因。代理的鉴权是用户名加密码,格式是 http://用户名:密码@入口域名:端口。用户名里通常带订单号和地区参数,具体以后台接入串为准,别照抄网上的例子。动态转发一般要求把调用方出口 IP 加进白名单,否则拒绝连接。我第一次配完连不上,查了半天是忘绑白名单,这种坑踩一次就记住了。

优秀的个人博客,低调大师

FastCFS V3.5 发布,支持多数派数据复制

经过一个多月紧锣密鼓的研发,FastCFS v3.5发布了。v3.5主要完成了异常情况下保证数据一致性的改进工作:数据提交采用多数派确认机制保证在高负载等不稳定情况下数据一致性和可靠性;实现了数据不一致时的自动恢复机制(以前版本是持续报错),包括如下两点: 1. slave自动回滚不一致的数据,然后从master恢复数据; 2. 在重启情况下,如果slave的数据版本比master高,则自动提升为master。 其他小改进: 1. 支持跨机器幂等机制; 2. 默认开启日志按天轮转和日志清除。 修复的bug列表: [fdir] dentry_list_by_path must call dentry_check_load_children [fdir & fstore] select leader/master distinguish success count and active count [fdir & fstore] get_myself_in_cluster_cfg by service, cluster and replica ports [fstore] MUST ignore errno EOPNOTSUPP when leader notify FastCFS v3.5是极端情况下保证数据一致性和可靠性的里程碑版本,欢迎大家下载和使用。使用FastCFS旧版本的用户,请及时升级到最新版本。

资源下载

更多资源
Mario

Mario

马里奥是站在游戏界顶峰的超人气多面角色。马里奥靠吃蘑菇成长,特征是大鼻子、头戴帽子、身穿背带裤,还留着胡子。与他的双胞胎兄弟路易基一起,长年担任任天堂的招牌角色。

Spring

Spring

Spring框架(Spring Framework)是由Rod Johnson于2002年提出的开源Java企业级应用框架,旨在通过使用JavaBean替代传统EJB实现方式降低企业级编程开发的复杂性。该框架基于简单性、可测试性和松耦合性设计理念,提供核心容器、应用上下文、数据访问集成等模块,支持整合Hibernate、Struts等第三方框架,其适用范围不仅限于服务器端开发,绝大多数Java应用均可从中受益。

Rocky Linux

Rocky Linux

Rocky Linux(中文名:洛基)是由Gregory Kurtzer于2020年12月发起的企业级Linux发行版,作为CentOS稳定版停止维护后与RHEL(Red Hat Enterprise Linux)完全兼容的开源替代方案,由社区拥有并管理,支持x86_64、aarch64等架构。其通过重新编译RHEL源代码提供长期稳定性,采用模块化包装和SELinux安全架构,默认包含GNOME桌面环境及XFS文件系统,支持十年生命周期更新。

Sublime Text

Sublime Text

Sublime Text具有漂亮的用户界面和强大的功能,例如代码缩略图,Python的插件,代码段等。还可自定义键绑定,菜单和工具栏。Sublime Text 的主要功能包括:拼写检查,书签,完整的 Python API , Goto 功能,即时项目切换,多选择,多窗口等等。Sublime Text 是一个跨平台的编辑器,同时支持Windows、Linux、Mac OS X等操作系统。

用户登录
用户注册