title: Read XLS file with Pandas & xlrd returns error; xlrd opens file on its own
body: <p>I am writing some automated scripts to process Excel files in Python, some are in XLS format. Here's a code snippet of my attempting to do so with Pandas:</p>
  <pre><code>df = pd.read_excel(contents, engine='xlrd', skiprows=5, names=['some', 'column', 'headers'])
  </code></pre>
  <p><code>contents</code> is the file contents pulled from an AWS S3 bucket. When this line runs I get <code>[ERROR] ValueError: File is not a recognized excel file</code>.</p>
  <p>In troubleshooting this, I have tried to access the spreadsheet using xlrd directly:</p>
  <pre><code>book = xlrd.open_workbook(file_contents=contents)
  print(&quot;Number of worksheets is {}&quot;.format(book.nsheets))
  print(&quot;Worksheet names: {}&quot;.format(book.sheet_names()))
  </code></pre>
  <p>This works without errors so xlrd seems to recognize it as an Excel file, just not when asked to do so by Pandas.</p>
  <p>Anyone know why Pandas won't read the file with xlrd as the engine?  Or can someone help me take the sheet from xlrd and convert it into a Pandas dataframe?</p>