新人必看:python自动化办公,开源项目的目录结构

简介: 期待更多大神,参与到本项目的开发中~

封面.jpg

大家好,这里是程序员晚枫。
开源项目:python-office 已经上线1个月了,功能一直在不断完善中。

python-office 是一个 Python 自动化办公第三方库,能解决大部分自动化办公的问题。而且每个功能只需一行代码,不需要小白用户学习 Python 知识,希望做到真正的开箱即用。

今天给大家详细介绍一下这个开源项目的目录结构,方便大家对该项目的理解和参与开发,也欢迎大家对目录结构给出自己的建议,目前的版本主要参考了几个流行框架的目录结构:pandas、flask、dash

功能持续更新中,提交你的功能需求/参与项目开发👉 Github

目录总览

文件夹 PATH 列表
卷序列号为 000000AB 0A45:16TS
D:\PYTHON-OFFICE
├─.idea
├─cli
├─contributors
│  └─demo
├─examples
├─core
├─docs
├─lib
│  ├─image
│  ├─pdf
│  ├─ppt
│  ├─tools
│  └─utils
├─office
├─script
├─tests
└─venv

该项目的源代码目录,目前包含:核心代码、PR文件夹、文档、单元测试、开发脚本、虚拟环境。
目录结构.jpg

开源参与者的目录

开源项目的精髓,在于大家的集体创作。

因为我是第一次组织开源项目,而且项目初创,需要频繁变动主目录和代码,所以目前采取了一种比较保守的PR方式:

大家把自己的代码,在master分支上传到以自己昵称命名的文件夹后,由我来将大家的代码,加入上文介绍的核心功能目录中。

未来项目稳定了,会逐步更换为开辟develop分支,并且直接提交到核心目录的PR方式。

所以目前建立了2个文件夹:

  • contributors:在这里,自己用昵称新建一个文件夹后,任意修改和提交。不要动别人文件夹下的项目即可。
  • examples:同样用自己昵称新建一个文件夹,在里面写一个对自己开发功能的调用,这一步必须有。

开源建设目录.jpg

用户的核心功能目录

其中用户会使用到的核心代码的文件夹有以下几个:

核心功能目录.jpg

这几个文件夹之间的关系,如下图所示。

  1. 用户有2种方式调用python-office这个库:

    • ①通过在代码里import office,
    • ②直接在cmd页面,运行cli包里的命令行(功能开发中)。
  2. office库只提供API接口,核心功能类的实现在core文件夹进行开发,core中的通用工具类或者对第三方库的调用,在lib里进行开发。它们之间之所以是层层调用的关系,是为了代码的解耦合,使代码逻辑更加清晰。

核心目录.jpg

开发人员用的目录

开发目录.jpg

这部分目录是给开发人员使用的,和仅仅使用python-office这个库的用户无关。

  • tests:单元测试的库,自己可以选择使用unittest或者pytest,我目前主要使用了unittest;
  • venv:本项目的虚拟环境,按照惯例,该目录没有上传到git仓库,需要自行配置;
  • script:目前主要是打包工具、发布工具,;
  • docs:存放有关项目的说明文档。

写在最后

通过最近一段时间的开发我发现,参与开源项目的建设,可以快速提高自己的编程能力。
期待更多大神,参与到本项目的开发中~

如有任何疑问或建议,请大家在评论区和我交流❤
相关文章
|
10月前
|
安全 JavaScript 开发者
Python 自动化办公神器|一键转换所有文档为 PDF
本文介绍一个自动化批量将 Word、Excel、PPT、TXT、HTML 及图片转换为 PDF 的 Python 脚本。支持多格式识别、错误处理与日志记录,适用于文档归档、报告整理等场景,大幅提升办公效率。仅限 Windows 平台,需安装 Office 及相关依赖。
523 0
|
11月前
|
Web App开发 存储 前端开发
Python+Selenium自动化爬取携程动态加载游记
Python+Selenium自动化爬取携程动态加载游记
|
机器学习/深度学习 数据采集 API
Python自动化解决滑块验证码的最佳实践
Python自动化解决滑块验证码的最佳实践
|
8月前
|
存储 数据采集 监控
Python定时爬取新闻网站头条:从零到一的自动化实践
在信息爆炸时代,本文教你用Python定时爬取腾讯新闻头条,实现自动化监控。涵盖请求、解析、存储、去重、代理及异常通知,助你构建高效新闻采集系统,适用于金融、电商、媒体等场景。(238字)
1350 2
|
11月前
|
数据采集 人工智能 API
推荐一款Python开源的AI自动化工具:Browser Use
Browser Use 是一款基于 Python 的开源 AI 自动化工具,融合大型语言模型与浏览器自动化技术,支持网页导航、数据抓取、智能决策等操作,适用于测试、爬虫、信息提取等多种场景。
1471 4
推荐一款Python开源的AI自动化工具:Browser Use
|
9月前
|
数据采集 监控 Shell
无需Python:Shell脚本如何成为你的自动化爬虫引擎?
Shell脚本利用curl/wget发起请求,结合文本处理工具构建轻量级爬虫,支持并行加速、定时任务、增量抓取及分布式部署。通过随机UA、异常重试等优化提升稳定性,适用于日志监控、价格追踪等场景。相比Python,具备启动快、资源占用低的优势,适合嵌入式或老旧服务器环境,复杂任务可结合Python实现混合编程。
|
11月前
|
Python
Python 办公实战:用 python-docx 自动生成 Word 文档
本文详解如何使用 python-docx 库实现 Word 文档自动化生成,涵盖环境搭建、文档创建、格式设置、表格与图片处理、模板填充、批量生成及性能优化等实战技巧,助你高效完成办公场景中的文档自动化任务。
2530 1
|
人工智能 安全 虚拟化
Cua:Mac用户狂喜!这个开源框架让AI直接接管你的电脑,快速实现AI自动化办公
Cua是一个结合高性能虚拟化与AI代理能力的开源框架,能在Apple Silicon上以接近原生性能运行虚拟机,并让AI直接操作系统应用。
2128 17
Cua:Mac用户狂喜!这个开源框架让AI直接接管你的电脑,快速实现AI自动化办公
|
11月前
|
存储 数据采集 数据可视化
Python自动化分析知网文献:爬取、存储与可视化
Python自动化分析知网文献:爬取、存储与可视化
|
11月前
|
数据采集 存储 监控
Python爬虫自动化:定时监控快手热门话题
Python爬虫自动化:定时监控快手热门话题

推荐镜像

更多