To test this sample you should have installed Pywin32 and start CATIA V5 before running this script.
import win32com.client catapp = win32com.client.Dispatch("CATIA.Application") doc=catapp.ActiveDocument.Product product_count = doc.Products.Count print "This example prints all Parts and subproducts of \ a CATProduct up to the 2nd level." for products in range(product_count): products = products + 1 print doc.Products.Item(products).Name, ":" part_count = doc.Products.Item(products).Products.Count for parts in range(part_count): parts = parts +1 print " ", doc.Products.Item(products).Products.Item(parts).Name For a HTML-generated Bill of materialyou should better use the BOM-generation from CATIA V5: import win32com.client catapp = win32com.client.Dispatch("CATIA.Application") doc=catapp.ActiveDocument.Product doc.Product.ExtractBOM(2, "c:\BOM.html")