Python
Python + win32com 自动化 Catia
通过 Python 的 win32com 模块远程控制 Catia V5,实现零件批量导出与参数读取。
#Python#win32com#自动化#批处理
环境准备
pip install pywin32
确保 Catia V5 已打开,并且 COM 自动化已启用。
连接 Catia
import win32com.client
# 连接到已运行的 Catia 实例
catia = win32com.client.Dispatch("CATIA.Application")
catia.Visible = True
print("Catia 版本:", catia.Version)
读取当前打开零件的参数
doc = catia.ActiveDocument
part = doc.Part
# 遍历所有参数
parameters = part.Parameters
for i in range(1, parameters.Count + 1):
param = parameters.Item(i)
print(f"{param.Name} = {param.Value}")
批量导出 STEP 文件
import os
docs = catia.Documents
for i in range(1, docs.Count + 1):
doc = docs.Item(i)
if doc.Name.endswith('.CATPart'):
step_path = os.path.join(r"D:\export", doc.Name.replace('.CATPart', '.stp'))
doc.ExportData(step_path, "stp")
print(f"已导出:{step_path}")
注意事项
- 需要以 管理员权限 运行 Python 脚本
- Catia 必须处于 已打开 状态
- 建议使用
try/except处理 COM 异常