Search code examples
pythonpowerpointpython-pptx

How to extract comments from PowerPoint presentation slides using Python


I need to extract comments (made using the Microsoft PowerPoint comment feature) from a series of PowerPoint presentations.

The following link explains how to do it in C#:

https://www.e-iceblue.com/Tutorials/Spire.Presentation/Spire.Presentation-Program-Guide/Comment-and-Note/Extract-comments-from-presentation-slides-and-save-in-txt-file.html

It appears that python-pptx does not have the functionality to read/write comments from PowerPoint:

https://python-pptx.readthedocs.io/en/latest/

If such a feature exists, I can not find it in the documentation above.

Is there any way to do this?


Solution

  • I was able to do this by using win32com to access the comment object and manipulate it from there as suggest by K753:

    import win32com.client
    ppt_dir = 'test.pptx'
    ppt_app = win32com.client.GetObject(ppt_dir)
    
    for ppt_slide in ppt_app.Slides:
        for comment in ppt_slide.Comments:
            print(comment.Text)
    

    The following documentation has further details on the comment object:

    https://learn.microsoft.com/en-us/office/vba/api/powerpoint.comment