In this article we’ll extract information from an MS Excel spreadsheet using python’s xlrd library.
On Windows platforms, there’s even a button to generate printable story index cards from the backlog items.
However as a Mac (MS office for Mac) user and Linux (OpenOffice/LibreOffice) user I found that the macros simply didn’t work for me, even after a bit of hacking. OpenOffice’s VBA implementation has some interesting incompatibilities with the Microsoft equivalent – and Microsoft, in their infinite wisdom, have removed the VBA support from MS Excel for Mac – and so are pushing me firmly towards an OSS solution.
I also faced an additional challenge: As well as index cards, I also the need to generate a readable PDF version of the document (using data read from the spreadsheet) and the ability to generate a mediawiki page (again using data read from the spreadsheet).
I want a solution that will work both on Linux (ubuntu) and Mac OSX (though the solution I came up with probably ought to work on Windows too).
/---> index cards Spreadsheet ---> \---> mediawiki page \---> PDF document
Many workplaces have mediawiki wikis – and these are often the information hub for a team or, indeed, the entire organisation.
Rather than generating a new web page on a different web server to display a semi-regularly updated computer generated report, I thought (perhaps) it could be convenient to have a tool which permitted the easy replacement of a particular page.
I recently undertook to develop such a tool – and, in researching, discovered the excellent mwclient library – although it _is_ somewhat lacking in examples/documentation.
As luck had it, the reporting tool I was using already generated output in mediawiki markup on stdout – so all I needed to do was write a tool that could read a page contents from stdin and then upload it to a predefined page on wiki.