If I have a link to a CSV file that someone has posted online, are there any applications or online services that can be used to wrap an API or query layer around it?

asked 11 Dec '10, 19:10

psychemedia's gravatar image

psychemedia ♦♦
1.1k323858
accept rate: 11%


It seems there's a newish feature in google docs which might help.

Using a formula such as,

=importData("http://data.example.com/performance.csv")

in a google spreadsheet will pull the data in from the referenced file. Then one could use the Google Spreadsheet API to get at it.

There are some sketchy details here: http://docs.google.com/support/bin/answer.py?hl=en&answer=75507

link

answered 15 Jan '11, 12:56

marxian's gravatar image

marxian
121128
accept rate: 0%

If you get the CSV file into a Google spreadsheet, you can then treat it as a database and query it via a RESTful API using the Google Spreadsheet API or Chart Tools Query Language, as described in the answers to this question: Can I query a data contained in a Google or Zoho spreadsheet? http://getthedata.org/questions/10/can-i-query-a-data-contained-in-a-google-or-zoho-spreadsheet

(15 Jan '11, 13:21) psychemedia ♦♦

Cool that's much better than a random script knocked up by me...

Can you import Excel as well as CSV? (if not I've got a Excel->CSV Service: http://graphite.ecs.soton.ac.uk/excel2csv

(15 Jan '11, 13:45) Christopher ...

@chris: I think you used to be able to import Excel from a URL, but now you have to upload it? I'm not sure if Zoho or DabbleDB support import of an Excel file from a URL? Does your excel->csv service let you import an excel file into google spreadsheets as csv then?!:-) eg along lines of =importData("http://graphite.ecs.soton.ac.uk/excel2csv?url=http://example.com/myspreadshett.xls")

(15 Jan '11, 15:16) psychemedia ♦♦

@psychemedia: the jsonpdataproxy service I mentioned below handles excel as well as csv.

(17 Jan '11, 20:02) rgrp ♦♦

We've just build a service called "Data Proxy" that converts a data source in csv (or xls) into json (or jsonp) via an online API:

http://jsonpdataproxy.appspot.com/

Documentation (temporary home): http://democracyfarm.org/dataproxy/ plus introductory blog post: http://blog.ckan.org/2011/01/11/raw-data-in-ckan-resources-and-data-proxy/

Here's a simple demo page that uses the API to preview a CSV file: http://jsonpdataproxy.appspot.com/static/demo.html

link

answered 15 Jan '11, 19:00

rgrp's gravatar image

rgrp ♦♦
501122027
accept rate: 14%

OK... I've built a CSV to JSONP tool, that's kinda handy, right? http://graphite.ecs.soton.ac.uk/csv2json/demo.html

link

answered 15 Jan '11, 15:05

Christopher%20Gutteridge's gravatar image

Christopher ...
143
accept rate: 0%

:-) It's also possible to import a CSV file (if it's not too big!) into a Yahoo Pipe using the import CSV block, and then get a JSON feed out. I'm not sure if there is an import CSV block defined for the pipe2py compiler [http://github.com/ggaughan/pipe2py] that converts a Yahoo pipe to its Python equivalent?

(15 Jan '11, 15:18) psychemedia ♦♦

There is an import CSV block defined for pipe2py. You should be able to test it online here: http://pipes-engine.appspot.com. If you run the pipe locally using pipe2py then the size of the CSV shouldn't be a problem.

(16 Jan '11, 11:52) greg

I've used http://elev.at

"The API can convert HTML Tables, Text files (CSV, tab delimited), and Excel spreadsheets (XLS files), to XML."

also supports JSON/P

link

answered 15 Jan '11, 16:04

kitwallace's gravatar image

kitwallace
64061426
accept rate: 13%

I could write one... Something like

Maybe ?col=1&row=10&url=http:///...foo.csv (on csv,tsv or Excel) Also ?col=Latitude&row=7&url=http:///...foo.csv

and ?size

to return the width & height of the data.

link

answered 15 Jan '11, 12:31

Christopher%20Gutteridge's gravatar image

Christopher ...
143
accept rate: 0%

edited 15 Jan '11, 12:33

@chris I noticed you just tweeted a hack around this? CSV to JSONP: http://graphite.ecs.soton.ac.uk/csv2json/demo.html

(16 Jan '11, 14:19) psychemedia ♦♦
Your answer
toggle preview

Follow this question

By Email:

Once you sign in you will be able to subscribe for any updates here

By RSS:

Answers

Answers and Comments

Markdown Basics

  • *italic* or _italic_
  • **bold** or __bold__
  • link:[text](http://url.com/ "title")
  • image?![alt text](/path/img.jpg "title")
  • numbered list: 1. Foo 2. Bar
  • to add a line break simply add two spaces to where you would like the new line to be.
  • basic HTML tags are also supported

Tags:

×4
×2

Asked: 11 Dec '10, 19:10

Seen: 1,019 times

Last updated: 17 Jan '11, 20:02

powered by OSQA