Python连接达梦数据库实战指南:从驱动安装到框架集成
1. 从“为什么”开始Python与达梦数据库的连接场景最近在几个企业级数据中台和国产化替代的项目里频繁遇到一个需求用Python去对接达梦数据库DM8。这其实是一个挺典型的场景尤其是在当前强调技术自主可控的大背景下很多传统使用Oracle、MySQL的系统正在逐步迁移或并行接入像达梦这样的国产数据库。Python作为数据分析、自动化脚本和快速应用开发的首选语言自然就成了连接这些数据库的桥梁。但说实话第一次上手时我也踩了不少坑。官方文档虽然齐全但更像一本字典缺少针对Python开发者“开箱即用”的指引。比如驱动选哪个dmPython和pymysql用法一样吗连接字符串里那一堆参数到底怎么配中文编码问题怎么冒出来的这些问题文档不会直接告诉你得自己摸索。所以这篇内容不是简单的API罗列而是把我从环境准备、驱动安装、连接测试到实际开发中遇到的编码、事务、性能问题这一整套流程结合具体代码和排查思路完整地梳理出来。无论你是刚开始接触达梦还是正在将旧有Python数据服务迁移到达梦平台希望这些经验能帮你少走弯路。2. 环境准备与驱动选型避开第一个大坑动手写代码之前环境是地基。这一步没做好后面全是空中楼阁。达梦为Python提供了官方的dmPython驱动模块这是最推荐、兼容性最好的方式。别想着用通用的ODBC或者像sqlalchemy的某些方言去绕初期可能能连上但遇到复杂数据类型、存储过程调用或者特定优化时坑多到你怀疑人生。2.1 达梦数据库客户端安装dmPython驱动并非一个纯Python的包它底层依赖于达梦数据库的客户端库libdmdpi.soon Linux,dmdpi.dllon Windows。因此第一步不是在pip install而是确保你的操作系统中已经正确安装了达梦数据库的客户端软件。获取安装包从达梦官网下载对应你操作系统Windows/Linux/AIX等和位数x86/x64的“客户端”安装包注意不是完整的数据库服务器安装包。执行安装以Linux为例通常是一个.iso或.bin文件。挂载或直接运行安装程序按照提示进行。安装过程中关键是要记住DM_HOME安装目录的路径比如/opt/dmdbms。配置环境变量这是至关重要的一步目的是让系统能找到客户端库。Linux/Mac在~/.bashrc或~/.bash_profile中添加export DM_HOME/opt/dmdbms export LD_LIBRARY_PATH$DM_HOME/bin:$LD_LIBRARY_PATH export PATH$DM_HOME/bin:$PATH然后执行source ~/.bashrc使生效。Windows在“系统属性”-“高级”-“环境变量”中添加系统变量DM_HOME值为你的安装目录例如C:\dmdbms。然后在Path变量中添加%DM_HOME%\bin。注意很多连接失败的错误比如ImportError: libdmdpi.so: cannot open shared object file根源就是LD_LIBRARY_PATH或Path没有正确设置。安装完客户端后务必在终端里执行echo $LD_LIBRARY_PATH或echo %PATH%确认路径已包含达梦的bin目录。2.2 安装 dmPython 驱动确保客户端环境变量生效后再安装Python驱动。dmPython可以通过pip从官方源安装但更推荐从达梦安装目录中获取版本匹配度最高。方式一推荐版本最匹配在达梦安装目录的drivers/python子目录下找到dmPython-xxx.whl文件。然后使用pip进行本地安装pip install /opt/dmdbms/drivers/python/dmPython-2.3-xxx.whl方式二使用pip官方源pip install dmPython这种方式安装的是PyPI上最新的版本可能与你的数据库服务器版本存在细微兼容性差异对于生产环境建议优先使用方式一。安装成功后可以在Python交互环境中验证import dmPython print(dmPython.__version__)如果没有报错并输出版本号说明驱动安装成功。3. 建立连接详解连接字符串与核心参数驱动装好了我们来建立第一个连接。dmPython的接口设计很大程度上兼容了Python DB API 2.0规范同时也吸收了cx_Oracle的一些特点如果你用过这些库会感到非常熟悉。3.1 基础连接示例最基本的连接方式如下import dmPython # 配置连接参数 conn_params { server: 192.168.1.100, # 数据库服务器IP port: 5236, # 达梦默认端口是5236不是3306 user: SYSDBA, # 默认管理员用户 password: SYSDBA, # 默认密码生产环境一定要改 autoCommit: False # 是否自动提交建议False手动控制事务 } try: # 建立连接 connection dmPython.connect(**conn_params) print(连接达梦数据库成功) # 创建游标 cursor connection.cursor() # 执行一个简单查询 cursor.execute(SELECT SYSDATE FROM DUAL) result cursor.fetchone() print(f当前数据库时间{result[0]}) # 关闭游标和连接 cursor.close() connection.close() except dmPython.Error as e: print(f连接或执行失败{e})这段代码构成了一个最小化的可工作示例。但实际项目中连接参数远不止这些。3.2 连接字符串参数深度解析dmPython.connect()支持两种传参方式关键字参数如上例和连接字符串。对于复杂配置连接字符串更清晰。下面是一个包含常用高级参数的例子# 使用连接字符串 conn_str ( server192.168.1.100:5236; # 服务器地址和端口 userDATA_USER; # 业务用户 passwordYourStrongPassword; autoCommitFalse; encodingUTF-8; # 客户端字符集解决中文乱码关键 connectTimeout10; # 连接超时秒 socketTimeout30; # socket操作超时秒 loginTimeout5; # 登录认证超时秒 ) connection dmPython.connect(conn_str)这里重点解释几个容易出问题但至关重要的参数encoding这是解决中文乱码问题的核心。达梦数据库内部有独立的字符集设置可在V$PARAMETER中查看UNICODE_FLAG和CHARSET。如果Python客户端发送的字符串编码与数据库服务端预期不符就会产生乱码。将encoding明确设置为UTF-8最通用的编码可以确保驱动在传输前后进行正确的编码转换。如果你的应用涉及多语言这个参数必须设置。autoCommit默认为False。这意味着你执行的INSERT,UPDATE,DELETE语句必须显式调用connection.commit()才会持久化到数据库。如果设为True则每条DML语句都会立即提交这在某些需要事务一致性的场景下是危险的。我强烈建议保持False在代码中明确控制事务边界。超时参数connectTimeout,socketTimeout,loginTimeout。在网络不稳定或数据库压力大时这些参数能防止你的应用线程无限期挂起。根据网络状况合理设置比如内网可以设短一些跨公网或网络质量差则需延长。3.3 使用连接池管理连接对于Web应用或高频服务频繁创建和销毁数据库连接开销巨大。虽然dmPython没有内置连接池但我们可以利用DBUtils或SQLAlchemy等第三方库来实现。这里以DBUtils的PooledDB为例from dbutils.pooled_db import PooledDB import dmPython # 创建连接池 pool PooledDB( creatordmPython, # 指定使用的数据库模块 maxconnections10, # 池中最大连接数 mincached2, # 初始化时创建的空闲连接数 maxcached5, # 池中空闲连接的最大数 blockingTrue, # 连接池满时是否阻塞等待 host192.168.1.100, port5236, userDATA_USER, passwordYourStrongPassword, encodingUTF-8, autoCommitFalse ) # 从池中获取连接 def get_data(): conn pool.connection() # 注意这里不是 dmPython.connect() try: cursor conn.cursor() cursor.execute(SELECT * FROM some_table LIMIT 10) return cursor.fetchall() finally: cursor.close() conn.close() # 这个close()并非真关闭而是将连接归还给池使用连接池后应用性能会得到显著提升特别是在并发场景下。DBUtils帮我们管理了连接的复用和生命周期。4. 执行SQL操作游标使用与参数化查询连接建立后所有数据库交互都通过**游标Cursor**对象进行。dmPython的游标用法非常标准。4.1 基础查询与数据获取cursor connection.cursor() # 执行查询 cursor.execute(SELECT user_id, user_name, email FROM users WHERE status ACTIVE) # 获取所有结果 all_rows cursor.fetchall() for row in all_rows: print(fID: {row[0]}, Name: {row[1]}, Email: {row[2]}) # 或者逐行获取适合大数据集 cursor.execute(SELECT * FROM large_table) while True: row cursor.fetchone() if row is None: break # 处理每一行数据 # 获取指定数量行 some_rows cursor.fetchmany(size50) # 获取结果集的列信息非常有用 description cursor.description for col in description: print(f列名: {col[0]}, 类型: {col[1]}, 显示大小: {col[2]}, ...)fetchall()会一次性将所有结果加载到客户端内存如果结果集很大几十万、百万行可能导致内存溢出。对于大数据量查询务必使用fetchone()或fetchmany()进行循环处理。4.2 参数化查询与防SQL注入绝对不要使用字符串拼接来构造SQL语句这是SQL注入攻击的根源。务必使用参数化查询。# 错误做法危险 user_input admin OR 11 sql fSELECT * FROM users WHERE username {user_input} cursor.execute(sql) # 这将导致严重的注入漏洞 # 正确做法使用参数化查询 user_id 1001 user_name 张三 # 方式1使用问号占位符推荐兼容性最好 sql UPDATE users SET score score ? WHERE user_id ? AND dept ? cursor.execute(sql, (10, user_id, IT)) # 参数以元组形式传入 # 方式2使用命名占位符更清晰 sql INSERT INTO logs (module, level, message) VALUES (:mod, :lvl, :msg) cursor.execute(sql, {mod: API, lvl: INFO, msg: 用户登录成功})驱动会自动处理参数的类型转换和转义确保安全。dmPython同时支持?位置参数和:name命名参数两种占位符风格我更喜欢命名参数因为代码可读性更高尤其是在参数很多的时候。4.3 插入、更新、删除与事务控制对于写操作INSERT, UPDATE, DELETE必须注意事务。try: cursor connection.cursor() # 插入数据 insert_sql INSERT INTO orders (order_id, customer_id, amount, order_date) VALUES (?, ?, ?, NOW()) cursor.execute(insert_sql, (ORD20240001, CUST1001, 2999.99)) # 更新数据 cursor.execute(UPDATE inventory SET stock stock - ? WHERE product_id ?, (2, PROD005)) # 如果所有操作都成功提交事务 connection.commit() print(事务提交成功。) except dmPython.DatabaseError as e: # 如果出现任何错误回滚事务 connection.rollback() print(f操作失败已回滚{e}) finally: cursor.close()这里的关键是try...except块和显式的commit()/rollback()调用。将一系列相关的写操作放在一个事务里能保证数据的一致性要么全成功要么全失败。忘记commit()是新手常犯的错误会导致数据“看似”插入成功因为查询可能能看到未提交的数据取决于隔离级别但重启数据库后就消失了。5. 高级特性与实战避坑指南掌握了基本CRUD后我们来看看一些高级特性和实际开发中必然会遇到的“坑”。5.1 处理大对象BLOB/CLOB与中文文本达梦的BLOB二进制和CLOB字符大对象类型对应Python的bytes和str类型。处理它们时需要注意读写方式。# 写入 CLOB (长文本如文章内容) long_text 这是一篇非常长的文章内容... * 1000 cursor.execute(INSERT INTO articles (id, title, content) VALUES (?, ?, ?), (1, 测试文章, long_text)) # 直接传入字符串即可 # 写入 BLOB (如图片) with open(image.png, rb) as f: image_data f.read() cursor.execute(INSERT INTO images (id, name, data) VALUES (?, ?, ?), (1, test.png, image_data)) # 直接传入bytes # 读取 CLOB/ BLOB cursor.execute(SELECT content, data FROM articles, images WHERE ...) row cursor.fetchone() clob_data row[0] # 已经是字符串 blob_data row[1] # 已经是bytes # 将BLOB数据写回文件 if blob_data: with open(output.png, wb) as f: f.write(blob_data)对于包含大量中文的CLOB字段确保前面提到的encodingUTF-8连接参数已设置这是避免乱码的根本。5.2 调用存储过程与函数达梦数据库支持存储过程和函数。dmPython调用它们的方式略有不同。cursor connection.cursor() # 调用存储过程通常使用 CALL 语句可能包含 OUT 参数 # 假设有一个存储过程 sp_calculate_bonus(IN emp_id INT, OUT bonus DECIMAL(10,2)) emp_id 1001 cursor.callproc(sp_calculate_bonus, [emp_id, 0]) # 第二个参数是OUT参数的初始占位值 # 获取OUT参数的值 cursor.execute(SELECT ?, (cursor.varvalue,)) # 方式可能因驱动版本而异另一种常见方式是 # 对于有返回结果的存储过程可以像查询一样 fetch # 具体需参考存储过程定义和驱动文档 # 更通用的方式是使用匿名块推荐更清晰 plsql_block BEGIN :bonus : calculate_bonus(:emp_id); -- 调用函数 UPDATE employees SET total_comp salary :bonus WHERE id :emp_id; END; # 创建变量 bonus_var cursor.var(float) # 创建用于接收OUT参数的变量 cursor.execute(plsql_block, {emp_id: emp_id, bonus: bonus_var}) final_bonus bonus_var.getvalue() # 获取输出值 print(f员工 {emp_id} 的奖金是{final_bonus}) connection.commit()调用存储过程时最大的挑战是处理INOUT和OUT参数。使用cursor.var(type)创建变量对象来绑定输出参数是标准做法。建议在开发前先用数据库管理工具如达梦管理工具测试一下存储过程的调用语法和返回值。5.3 常见错误排查与性能优化错误1dmPython.Error: (-70028)或连接超时可能原因网络不通、防火墙拦截、数据库服务未启动、端口错误达梦默认是5236不是3306。排查在服务器上用netstat -tlnp | grep 5236检查达梦进程是否在监听。从客户端用telnet server_ip 5236测试端口连通性。检查客户端和服务器端的防火墙规则。错误2UnicodeDecodeError或查询结果中文乱码根本原因客户端、驱动、服务器三者的字符集不一致。解决方案首选在连接参数中强制指定encodingUTF-8。检查数据库服务器字符集SELECT * FROM V$PARAMETER WHERE NAME LIKE %CHARACTER%。确保你的Python源文件本身也是UTF-8编码保存的。错误3dmPython.Error: (-2007)无效的表或视图名可能原因大小写敏感问题。达梦在创建对象时如果对象名未用双引号括起来默认会转换为大写。但在查询时如果你的SQL里用的是小写就可能找不到。示例CREATE TABLE myTable (...)实际创建的表名是MYTABLE。查询时必须用SELECT * FROM MYTABLE或SELECT * FROM myTable。最佳实践在设计阶段就统一规范要么全部使用大写要么在创建和查询时始终对对象名使用双引号。性能优化建议使用连接池如前所述对于Web应用这是必须的。批量操作对于大量数据插入ETL场景使用executemany()比循环execute()快一个数量级。data_to_insert [(1, A), (2, B), (3, C)] cursor.executemany(INSERT INTO t (id, val) VALUES (?, ?), data_to_insert) connection.commit()合理使用fetchmany处理百万级数据时用fetchmany(1000)分批处理平衡内存和I/O。创建索引这是数据库层面的优化但对Python应用性能影响最大。分析慢查询在WHERE、JOIN、ORDER BY涉及的列上建立合适索引。关闭游标养成finally块中关闭游标的习惯或使用with上下文管理器如果驱动支持。6. 结合流行框架在Django和SQLAlchemy中使用达梦在实际项目中我们很少直接裸用dmPython而是会集成到ORM框架中。6.1 在Django中配置达梦数据库Django官方不支持达梦但可以通过第三方后端django-dm来实现。首先安装pip install django-dm然后在settings.py中配置数据库DATABASES { default: { ENGINE: django_dm, # 使用django-dm引擎 NAME: DAMENG, # 数据库名 USER: DATA_USER, PASSWORD: YourStrongPassword, HOST: 192.168.1.100, PORT: 5236, OPTIONS: { encoding: UTF-8, # 其他dmPython连接参数也可以放在这里 } } }配置好后python manage.py migrate和python manage.py runserver就可以像使用MySQL/PostgreSQL一样操作达梦数据库了。需要注意的是一些Django高级特性如特定数据库的Field类型可能需要调整。6.2 在SQLAlchemy中集成达梦SQLAlchemy通过方言Dialect支持多种数据库。达梦也有对应的方言实现例如sqlalchemy-dm。pip install sqlalchemy sqlalchemy-dm使用示例from sqlalchemy import create_engine, Column, Integer, String, MetaData from sqlalchemy.ext.declarative import declarative_base from sqlalchemy.orm import sessionmaker # 创建连接引擎 # 格式dmdmPython://user:passwordhost:port/database?encodingUTF-8 engine create_engine( dmdmPython://DATA_USER:YourStrongPassword192.168.1.100:5236/DAMENG?encodingUTF-8, echoTrue # 打印SQL调试用 ) Base declarative_base() # 定义模型 class User(Base): __tablename__ users id Column(Integer, primary_keyTrue) name Column(String(50)) email Column(String(100)) # 创建表 Base.metadata.create_all(engine) # 创建会话 Session sessionmaker(bindengine) session Session() # 增删改查 new_user User(name李四, emaillisiexample.com) session.add(new_user) session.commit() users session.query(User).filter_by(name李四).all() for u in users: print(u.id, u.name, u.email) session.close()使用ORM框架能极大提升开发效率但也要注意复杂的ORM查询可能会生成非最优的SQL在性能关键路径上有时直接使用dmPython编写原生SQL或调用存储过程是更佳选择。7. 从开发到部署完整项目结构建议与监控最后分享一个我认为比较清晰的项目结构适用于中小型Python数据应用或后端服务。your_project/ ├── config/ │ ├── __init__.py │ └── settings.py # 数据库连接配置、日志配置等 ├── database/ │ ├── __init__.py │ ├── connection_pool.py # 封装连接池的创建与管理 │ └── models.py # 使用SQLAlchemy时的模型定义 ├── dao/ # 数据访问层 │ ├── __init__.py │ └── user_dao.py # 用户表相关的CRUD操作 ├── service/ # 业务逻辑层 │ └── user_service.py ├── utils/ │ └── logger.py # 日志工具 ├── scripts/ │ └── init_database.py # 初始化数据库表结构的脚本 ├── requirements.txt └── main.py在config/settings.py中使用环境变量来管理敏感信息如密码import os from dotenv import load_dotenv # 需要安装 python-dotenv load_dotenv() DM_CONFIG { host: os.getenv(DM_HOST, localhost), port: int(os.getenv(DM_PORT, 5236)), user: os.getenv(DM_USER), password: os.getenv(DM_PASSWORD), # 密码从环境变量读取不上传代码库 database: os.getenv(DM_DATABASE, DAMENG), encoding: UTF-8, }在database/connection_pool.py中集中管理连接池的创建避免在代码中硬编码。部署与监控依赖管理使用requirements.txt精确锁定所有包版本特别是dmPython的版本。健康检查在服务启动时或定时任务中添加一个简单的数据库连接检查执行SELECT 1之类的语句确保连接池有效。日志记录为数据库操作添加详细的日志记录慢查询、错误信息便于后期性能分析和故障排查。可以将dmPython驱动的日志级别调高或者使用SQLAlchemy的echoTrue在开发时查看所有SQL。连接泄露排查定期监控数据库会话SELECT * FROM V$SESSIONS如果发现大量INACTIVE状态但未关闭的会话来自你的应用说明可能存在连接未正确释放的问题回头检查代码中的close()逻辑。整个流程走下来从环境配置、驱动安装、基础连接、CRUD操作、高级特性到框架集成和项目实践核心就是细心和理解原理。达梦作为成熟的国产数据库与Python的生态对接已经相当顺畅只要理解了字符集、事务、连接管理这几个关键点剩下的就是按照Python DB API的标准模式去操作剩下的就是根据具体业务需求去深入和优化了。

相关新闻

网络模因传播:从疯狂龙虾看社交媒体内容创作

网络模因传播:从疯狂龙虾看社交媒体内容创作

1. 项目背景:龙虾热潮背后的社会现象最近社交媒体上突然刮起了一阵"疯狂的龙虾"旋风,这个看似无厘头的短语在短短几周内席卷各大平台。作为一个长期观察网络流行文化的从业者,我决定深入挖掘这个现象背后的成因和运作机制。龙虾作为…

2026/7/30 2:24:38 阅读更多 →
告别论文内耗✨一个OKBIYE搞定毕业全流程

告别论文内耗✨一个OKBIYE搞定毕业全流程

写论文最磨人的,从来不是不会写,而是细碎琐事太多、工具来回切换、反复返修内耗。 开题卡思路、综述凑字数、翻译全是机翻感、格式反复调不对、答辩PPT廉价翻车、定稿怕双检超标…… 一路走来试过无数学术工具,要么功能单一、要么模板化严重…

2026/7/30 2:23:38 阅读更多 →
答辩PPT救星✨10分钟搞定学术汇报!AI一键出片太绝了

答辩PPT救星✨10分钟搞定学术汇报!AI一键出片太绝了

谁懂啊!写论文熬秃了头,最后还被答辩PPT狠狠拿捏😭 熬夜排版、反复调版式、内容逻辑混乱、页面杂乱土气,改了一遍又一遍,不仅浪费大把时间,还容易因为PPT粗糙被扣印象分! 普通AI做PPT千篇一律…

2026/7/30 2:23:38 阅读更多 →

最新新闻

SuperCom深度解析:高效串口调试工具的进阶指南

SuperCom深度解析:高效串口调试工具的进阶指南

SuperCom深度解析:高效串口调试工具的进阶指南 【免费下载链接】SuperCom SuperCom 是一款串口调试工具 项目地址: https://gitcode.com/gh_mirrors/su/SuperCom 在嵌入式开发和硬件通信领域,串口调试工具是连接物理世界与数字世界的桥梁。SuperC…

2026/7/30 2:34:40 阅读更多 →
成都财税、家装行业专属电销外包服务商怎么选

成都财税、家装行业专属电销外包服务商怎么选

1. 通信与数据合规依据遵照工信部信管〔2020〕81号文件、《个人信息保护法》、T/CCSA 737-2025《人工智能营销客服平台能力要求》:财税行业涉及企业经营隐私、家装行业留存业主住址、房屋信息,均属于敏感个人信息范畴,承接外呼的服务商必须具…

2026/7/30 2:34:40 阅读更多 →
液冷二次侧管路阀门选型与代表厂商研究报告

液冷二次侧管路阀门选型与代表厂商研究报告

报告显示,2026年工业制造赛道中,液冷二次侧管路阀门因AI算力密度突破40kW/机柜而成为温控安全的关键瓶颈,全行业SIL3认证阀门需求规模同比增长约65%。上海法登阀门有限公司在该趋势中已形成规模化合规交付能力,其2025年SIL3认证阀…

2026/7/30 2:34:40 阅读更多 →
Windows Subsystem for Android实用指南:三步实现安卓应用在Windows 11上的高效运行

Windows Subsystem for Android实用指南:三步实现安卓应用在Windows 11上的高效运行

Windows Subsystem for Android实用指南:三步实现安卓应用在Windows 11上的高效运行 【免费下载链接】WSA Developer-related issues and feature requests for Windows Subsystem for Android 项目地址: https://gitcode.com/gh_mirrors/ws/WSA Windows Sub…

2026/7/30 2:34:40 阅读更多 →
鸣潮工具箱:3分钟解锁120帧流畅体验的完整指南

鸣潮工具箱:3分钟解锁120帧流畅体验的完整指南

鸣潮工具箱:3分钟解锁120帧流畅体验的完整指南 【免费下载链接】WaveTools 🧰鸣潮工具箱 项目地址: https://gitcode.com/gh_mirrors/wa/WaveTools 还在为《鸣潮》游戏画面卡顿、帧率不稳而烦恼吗?想让你的游戏体验从普通画质直接升级…

2026/7/30 2:34:40 阅读更多 →
AI 时代的界面美学:机器生成的“美“是否有标准可循

AI 时代的界面美学:机器生成的“美“是否有标准可循

AI 时代的界面美学:机器生成的"美"是否有标准可循 一、引子:两张截图,一张人类设计,一张 AI 生成 把一张人工设计的 Dashboard 和一张 AI 生成的 Dashboard 放在一起,很容易得到一种直觉:后者通…

2026/7/30 2:33:40 阅读更多 →

日新闻

Windows驱动存储终极清理工具:DriverStoreExplorer完全指南

Windows驱动存储终极清理工具:DriverStoreExplorer完全指南

Windows驱动存储终极清理工具:DriverStoreExplorer完全指南 【免费下载链接】DriverStoreExplorer Driver Store Explorer 项目地址: https://gitcode.com/gh_mirrors/dr/DriverStoreExplorer 您是否曾因Windows系统盘空间不足而烦恼?是否遇到过设…

2026/7/30 0:00:13 阅读更多 →
如何3步掌握Video Download Helper:网页视频下载的完整实战指南

如何3步掌握Video Download Helper:网页视频下载的完整实战指南

如何3步掌握Video Download Helper:网页视频下载的完整实战指南 【免费下载链接】VideoDownloadHelper Chrome Extension to Help Download Video for Some Video Sites. 项目地址: https://gitcode.com/gh_mirrors/vi/VideoDownloadHelper 你是否曾经在浏览…

2026/7/30 0:00:13 阅读更多 →
“双减”后首个AI备课压力测试报告:覆盖32所中小学的176节AI辅助课,暴露4大隐性增负节点

“双减”后首个AI备课压力测试报告:覆盖32所中小学的176节AI辅助课,暴露4大隐性增负节点

更多请点击: https://intelliparadigm.com 第一章:AI 教师备课辅助 AI 教师备课辅助系统正逐步成为教育数字化转型的核心支撑工具,它并非替代教师,而是通过语义理解、知识图谱与多模态生成能力,将教师从重复性劳动中解…

2026/7/30 0:00:13 阅读更多 →

周新闻

深度学习道路桥梁裂缝检测系统 道路桥梁裂缝检测数据集 道路桥梁病害识别检测数据集

深度学习道路桥梁裂缝检测系统 道路桥梁裂缝检测数据集 道路桥梁病害识别检测数据集

深度学习道路桥梁裂缝检测系统 数据集6000张 完整源码已标注数据集训练好的模型环境配置教程程序运行说明文档,可以直接使用!系统支持图片、视频、摄像头等多种方式检测裂缝,功能强大实用。 1数据集6000张 8各类别

2026/7/29 22:18:20 阅读更多 →
深度学习YOLO模型如何训练 PUBG 绝地求生目标检测数据集

深度学习YOLO模型如何训练 PUBG 绝地求生目标检测数据集

pubg数据集 精选原图1.42万数据 1.49万标签 无任何重复、算法增强或冗余图像! pubg绝地求生目标检测数据集 1分类:e_body,14905个标签,txt格式 共计14244张图,99%为640*640尺寸图像 适合yolo目标检测、AI训练关键词&am…

2026/7/29 14:34:28 阅读更多 →
Apex英雄目标检测数据集 深度学习框架YOLO如何训练APEX数据集

Apex英雄目标检测数据集 深度学习框架YOLO如何训练APEX数据集

Apex检测数据集数据集详情检测类别: allies enemy tag图片总量:7247张训练集:5139张验证集:1425张测试集:683张标注状态:全部已标注,即拿即用数据格式:支持YOLO格式及其他格式&#…

2026/7/29 15:00:03 阅读更多 →

月新闻