Home

Awesome

xlrd2

xlrd2 is an effort to extend xlrd project, which is no longer mintained by its developers. The main goal is to make it suitable for extracting necessary information from malicious xls documents.

Xlrd Purpose: Provide a library for developers to use to extract data from Microsoft Excel (tm) spreadsheet files. It is not an end-user tool.

Versions of Python supported: 2.7, 3.4+.

Installation:

  1. Installing using pip

     pip install xlrd2
    
  2. Installing the latest development

    Using pip

     pip install -U https://github.com/DissectMalware/xlrd2/archive/master.zip
    

    Or download the latest version

     wget https://github.com/DissectMalware/xlrd2/archive/master.zip
    

    Extract the zip file and go to the extracted directory

     python setup.py install --user
    

Quick start:

import xlrd2
book = xlrd2.open_workbook("myfile.xls")
print("The number of worksheets is {0}".format(book.nsheets))
print("Worksheet name(s): {0}".format(book.sheet_names()))
sh = book.sheet_by_index(0)
print("{0} {1} {2}".format(sh.name, sh.nrows, sh.ncols))
print("Cell D30 is {0}".format(sh.cell_value(rowx=29, colx=3)))
for rx in range(sh.nrows):
    print(sh.row(rx))

Another quick start: This will show the first, second and last rows of each sheet in each file:

python PYDIR/scripts/runxlrd2.py 3rows *blah*.xls

Xlrd Acknowledgements: