Skip to content

Using loadTable() returns an empty Table object for URLs not ending in ".csv" or ".tsv" #1696

fish2000 opened this Issue Mar 20, 2013 · 2 comments

3 participants


Prior to Processing 2.0b7, remote tabular data URLs with arbitrary semantics would load and work fine, as long as they contained properly parseable CSV or TSV data. As of 2.0b7 the suffixes must be appended.

I encountered this problem while trying to pull data from a Django web app that looked like this:


... which yielded the empty set. It worked after the URL in the web app was changed to this form:


... although even with the ".csv" suffix, empty sets are still returned if query string parameters are appended. I additionally tested all of these cases with static files served from nginx, with the same results.

Since loading remote data, by definition, enables Processing to access data whose metadata that is not explicitly under the control of the user, I assume this is a bug and not a feature – many public datasets, such as this USGS feed of earthquake data:

... are no longer useable from Processing without using some sort of cumbersome workaround.

Relatedly, I found that a URL containing CSV data but ending in ".tsv" will load properly with loadTable(url, "csv") – this further suggests that the suffix constraint is a bug.

Processing Foundation member

The loadTable() syntax has been changing quite a bit. Here's the latest documentation:

CSV format is assumed, unless otherwise specified.

Does using this syntax with the latest build address your concern?

Processing Foundation member
benfry commented Apr 11, 2013

Not a bug, this is just how the syntax will work, specifically to address what's being cited here.

If it's tsv data, use:
Table t = loadTable("http://localhost:8000/spreadsheets/worksheet/csv/1?header=true", "tsv");

If it's csv data, use:
Table t = loadTable("http://localhost:8000/spreadsheets/worksheet/csv/1?header=true", "csv");

In a related change, I've also removed auto-detection of the format, which means a file named .csv that's actually .tsv will no longer work properly.

@benfry benfry closed this Apr 11, 2013
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Something went wrong with that request. Please try again.