title: Python tabula-py error (pandas error?)
body: <p>After some reading online I have decided to use tabula-py to extract tables from pdf files. We use Anaconda and I just installed tabula-py 1.1.1.</p>
  
  <p>I wanted to start out with a simple script and see what it would do with a single page pdf file with some text and two tables ("table_p16.pdf").</p>
  
  <p>The code:</p>
  
  <pre><code>from tabula import read_pdf
  df = read_pdf("table_p16.pdf")
  </code></pre>
  
  <p>The error:</p>
  
  <blockquote>
    <p>Picked up JAVA_TOOL_OPTIONS: -Djava.security.properties=c:\Windows\Sun\Java\Deployment\sam.security</p>
    
    <p>Traceback (most recent call last):</p>
    
    <p>File "H:/Personlich/SVN/blademat_tb/blademat_toolbox/utility/read_pdf.py", line 41, in 
        df = read_pdf("table_p16.pdf")</p>
    
    <p>File "C:\Users\xxxxxxxxxxxx\AppData\Local\Continuum\Anaconda3\envs\test_env\lib\site-packages\tabula\wrapper.py", line 117, in read_pdf
        return pd.read_csv(io.BytesIO(output), **pandas_options)</p>
    
    <p>File "C:\Users\xxxxxxxxxxxx\AppData\Local\Continuum\Anaconda3\envs\test_env\lib\site-packages\pandas\io\parsers.py", line 709, in parser_f
        return _read(filepath_or_buffer, kwds)</p>
    
    <p>File "C:\Users\xxxxxxxxxxxx\AppData\Local\Continuum\Anaconda3\envs\test_env\lib\site-packages\pandas\io\parsers.py", line 455, in _read
        data = parser.read(nrows)</p>
    
    <p>File "C:\Users\xxxxxxxxxxxx\AppData\Local\Continuum\Anaconda3\envs\test_env\lib\site-packages\pandas\io\parsers.py", line 1069, in read
        ret = self._engine.read(nrows)</p>
    
    <p>File "C:\Users\xxxxxxxxxxxx\AppData\Local\Continuum\Anaconda3\envs\test_env\lib\site-packages\pandas\io\parsers.py", line 1839, in read
        data = self._reader.read(nrows)</p>
    
    <p>File "pandas/_libs/parsers.pyx", line 902, in pandas._libs.parsers.TextReader.read</p>
    
    <p>File "pandas/_libs/parsers.pyx", line 924, in pandas._libs.parsers.TextReader._read_low_memory</p>
    
    <p>File "pandas/_libs/parsers.pyx", line 978, in pandas._libs.parsers.TextReader._read_rows</p>
    
    <p>File "pandas/_libs/parsers.pyx", line 965, in pandas._libs.parsers.TextReader._tokenize_rows</p>
    
    <p>File "pandas/_libs/parsers.pyx", line 2208, in pandas._libs.parsers.raise_parser_error</p>
    
    <p>pandas.errors.ParserError: Error tokenizing data. C error: Expected 8 fields in line 9, saw 9</p>
  </blockquote>
  
  <p>Things I have tried:</p>
  
  <ul>
  <li>Since the error seems to show problems with pandas I tried to read a
  single page pdf with one table. The same error holds.</li>
  <li>Set user variable PATH to Java. Did not change anything. Can't set
  system variable PATH to Java, since it is currently used for our SVN
  programm.</li>
  <li><p>Different code lines, with the same error:</p>
  
  <pre><code>df = read_pdf(r"table_p9.pdf")
  df = read_pdf(r"table_p9.pdf")
  df = read_pdf("table_p9.pdf", output_format='json')
  </code></pre></li>
  </ul>
  
  <p>I hope someone can chip in and help me figure out where the problem lies. It could be a Java issue, but I am not that familiar with the required Java interaction. Your help is much appriciated.</p>
  
  <p><strong>Edit</strong></p>
  
  <p>I tried different tables and some seem to be working. It has been difficult to identify what type of tables work. Some with 'merged' columns and others with 'merged' rows seem to work. But clearly not all. Also, I have not been able to read multiple tables (2 or 3) using the argument multiple_tables=True.</p>
  
  <p>Is there any source to what kind of tables Tabula can handle? And this makes me wonder whether Tabula is the right program to use. After all the reading I did, I was under the impression that Tabula would be good at this. The tables it seems to struggle with are not complex.</p>
  
  <p>Is there a clear and simple source on how to maximize the use of Tabula? Or otherwise tips on how to deal with tables that Tabula struggles with?</p>
  
  <p>Regards,
  Gabriel</p>