I didn't think of using telegram, and that has easy arbitrary file attachments to go with it. I wonder how easy it is to grab the transcripts and transform them, I'll have to check it out!
It's really easy. In the chat context menu, go to Export Chat History. You can then pick what kind of media to export (aside from just the messages themselves). It produces semantically tagged HTML (mostly divs with .date, .from_name, .text, etc, wrapped in a basic head/body tag) in a folder of your choosing which you can then parse with Cheerio, BeautifulSoup, etc.
Another option is the MTProto API, it's pretty powerful, skip the middleman xD