python实现钉钉通讯录导出Excel表

news2024/11/17 21:28:53

Python工具开源专栏

Py0004 python实现钉钉通讯录导出Excel表

  • Python工具开源专栏
  • 前言
  • 目录结构
  • 部分演示
  • 完整代码已在GitHub上开源

前言

  需求来源于公司,需要将钉钉通讯录以Excel表的形式导出到本地,方便定期备份。导出的Excel需要处理钉钉用户兼任多部门的数据问题。功能大致如下几点。(文末有github链接)

  1. 读取钉钉通讯录的用户列表、部门列表。
  2. 支持导出钉钉通讯录到JSON或Excel文档。
  3. 通过requests网络请求获取钉钉通讯录,前提需配置钉钉开放后台微应用。

  工具技术要点:面向对象、网络请求,使用了py库requestsopenpyxl


目录结构

源代码目录结构:

Dingtalk-Book2Excel
 |——— assets
	  |——— json					# 存放json资源文件
	  |——— xlsx					# 存放excel资源文件
 |——— components
	  |——— __init__.py			# 初始化模块包文件
	  |——— DingtalkOpenAPI.py	# 调用钉钉通讯录的网络请求工具类
	  |——— ExcelHandle.py		# 导出Excel的工具类
	  |——— JsonHandle.py		# 导出Json的工具类
 |——— logs
 |——— utils
	  |——— __init__.py			# 初始化模块包文件
  	  |——— utils_const.py		# 常量表
	  |——— utils_logging.py		# log日志工具类
 |——— dingtalk_book2excel.py	# py主程序源文件
 |——— readme.md			# 
 |——— LICENSE			# 
 |——— requirements.txt	# py项目的依赖项

执行文件的目录结构:

 |——— dingtalk_book2excel.exe	# 主程序入口

部分演示

导出的JSON格式
1


导出的Excel格式
2



完整代码已在GitHub上开源

源码已在GitHub上开源:Dingtalk-Book2Excel



参考来源:钉钉文档-通讯录管理

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1619705.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【计算机毕业设计】药品销售系统产品功能介绍——后附源码

🎉**欢迎来到我的技术世界!**🎉 📘 博主小档案: 一名来自世界500强的资深程序媛,毕业于国内知名985高校。 🔧 技术专长: 在深度学习任务中展现出卓越的能力,包括但不限于…

华为数通HCIA ——企业网络架构以及产品线

一.学习目标:精讲网络技术,可以独立搭建和维护中小企业网络! 模拟器(华为方向请安装ENSP,Ensp-Lite已有安装包,号称功能更加完善-这意味着要耗费更多的系统资源但是仅对华为内部伙伴申请后方可使用&#x…

TDengine高可用架构之TDengine+Keepalived

之前在《TDengine高可用探讨》提到过,TDengine通过多副本和多节点能够保证数据库集群的高可用。单对于应用端来说,如果使用原生连接方式(taosc)还好,当一个节点下线,应用不会受到影响;但如果使用…

Python 基础、流程、容器、函数

一、基础语法 1.1 前言 1.1.1 Python简介 Python是一门编程语言,Python的作者是Guido van Rossum(龟叔) Python优点:简单易学 Python与嵌入式、集成电路行业 强大的库和工具生态系统:Python拥有广泛而强大的库和…

【Harmony3.1/4.0】笔记五

概念 本文综合row,column作为主要布局,结合image组件,text组件,textimput组件,button组件以及轮播布局搭建登录页面 效果图 ArkTS代码 //登录综合页面 Entry Component struct Five{//添加图片State imgs:Resource[…

网络安全主题纪录片

网络安全主题纪录片 文章目录 网络安全主题纪录片第四公民黑客帝国系列龙纹身女孩碟中谍系列虎胆龙威4匿名者终结者2:审判日东方快车谋杀案黑客国家公敌我是谁:没有绝对安全的系统黑客军团速度与激情系列十亿美元大劫案勒索软件的背后黑客的恐惧为什么网…

共享汽车管理|基于SprinBoot+vue的共享汽车管理系统(源码+数据库+文档)

共享汽车管理目录 基于SprinBootvue的共享汽车管理系统 一、前言 二、系统设计 三、系统功能设计 1 管理员模块的实现 1.1 用户信息管理 1.2 投放地区管理 1.3 汽车信息管理 1.4 汽车入库管理 2 用户模块的实现 2.1 汽车投放 2.2 使用订单管理 2.3 汽车归还 四、…

Java八股文4-Linux篇

Linux篇 Linux中常见命令:Linux常见命令 1.free命令-查看内存状态 free命令用于显示内存状态,它可以提供关于系统内存使用情况的详细信息。这个命令会显示出内存的使用情况,包括实体内存、虚拟的交换文件内存、共享内存区段,以及…

开发简易复用 SDK(项目加分项)

文章目录 开发 SDK新建项目修改pom文件删除启动类创建配置类复制之前的客户端新建spring.factories打包 开发 SDK 为什么要开发SDK。 减少代码的冗余提高代码的复用 如果实际项目中需要使用到该SDK,在pom.xml中注入就可以了。 类似于maven一样,把需要…

`THREE.AudioAnalyser` 音频分析

demo案例 THREE.AudioAnalyser 音频分析 入参 (Input Parameters): audio: 一个 THREE.Audio 实例,代表要分析的音频。fftSize: 快速傅里叶变换(FFT)的大小,用于确定分析的精度和频率分辨率。smoothingTimeConstant: 平滑时间…

AI时代的GPU集群网络算力分析

浅谈GPU集群网络、集群规模和集群算力 引言在生成式AI(GenAI)和大模型时代,不仅需要关注单个GPU卡的算力,更要关注GPU集群的总有效算力。单个GPU卡的有效算力可以通过该卡的峰值算力来测算,例如,对于Nvidia…

【01-机器学习入门:理解Scikit-learn与Python的关系】

文章目录 前言Python与机器学习Scikit-learn简介Scikit-learn与Python的关系使用Scikit-learn进行机器学习结语前言 在当今的数据科学和人工智能领域,机器学习已经成为了一个不可或缺的组成部分。而对于那些刚刚踏入这一领域的新手来说,理解机器学习的基本概念和找到合适的工…

UDS报文传输的四种帧

ISO14229-1规定了26个诊断服务细节,也就是UDS诊断报文的细节。它只规定了各个服务每个字节的含义,它不关心底层到底是怎么传输的。 ISO15765-2规定了基于CAN总线进行UDS报文传输的细节(包括四种帧)。是在CAN总线传输的情况下&…

Vitis HLS 学习笔记--对于启动时间间隔(II)的理解

目录 1. II的重要性 2. 案例分析 3. 总结 1. II的重要性 在Vitis HLS(High-Level Synthesis)中,启动时间间隔(II,Iteration Interval)是一个非常关键的概念,对于实现高性能的硬件加速器设计…

SpanBert学习

SpanBERT: Improving Pre-training by Representing and Predicting Spans 核心点 提出了更好的 Span Mask 方案,也再次展示了随机遮盖连续一段字要比随机遮盖掉分散字好;通过加入 Span Boundary Objective (SBO) 训练目标,增强了 BERT 的性…

蓄能勃发,酷开科技携酷开系统“软硬结合”提升大屏实力

智慧大屏以全新媒体形态之姿在过去几年快速增长,截至去年上半年,国内联网电视总量覆盖达5.26亿,其中智能电视终端活跃量达3.22亿,在PC、Mobile流量增长已显疲态的背景下,大屏的高速发展意味着一个新的赛道的崛起&#…

程序员英语之Spring篇

spring.io/quickstart 本期课程讲解Spring官网的快速上手页面 官网地址 https://spring.io/quickstart Spring Quickstart Guide Spring 快速开始指南 Guide 指南 What you’ll build 接下来你将要构建的是什么? build 构建 You will build a classic “H…

Sectigo证书申请流程及价格介绍

Sectigo 是一家全球知名的数字证书颁发机构(Certificate Authority, CA),自1998年起就开始提供 SSL 证书服务,是全球最早的 CA 机构之一。 一 Sectigo证书申请流程 1 确定证书类型 根据自身的需求确定证书的类型,一…

from_pretrained明明以及下载好模型,却突然不能加载了报错

本人报错:OSError: Error no file named model_index.json found in directory /home/xxx/我的python学习/textToImage/sdxl-turbo. 原因:路径错误导致无法加载模型的配置文件 pipe AutoPipelineForText2Image.from_pretrained("stabilityai/sdx…

Gopher的Rust第一课:Rust的那些事儿

要说这两年后端编程语言谁最火,Rust[1]说自己第二,没人敢说第一。Rust连续8年霸榜stackoverflow最受推崇的编程语言[2],甚至被推特之父Jack Dorsey称为“完美的编程语言”: 注:最火:仅代表人气最旺&#xf…