Astroquery

This is the documentation for the Astroquery affiliated package of astropy.

Code and issue tracker are on GitHub.

Introduction

Astroquery is a set of tools for querying astronomical web forms and databases.

There are two other packages with complimentary functionality as Astroquery: astropy.vo is in the Astropy core and pyvo is an Astropy affiliated package. They are more oriented to general virtual observatory discovery and queries, whereas Astroquery has web service specific interfaces.

Check out the A Gallery of Queries for some nice examples.

Installation

The latest version of astroquery can be conda installed while the latest and development versions can be pip installed or be downloaded directly from GitHub.

Using pip

$ pip install astroquery

and the ‘bleeding edge’ master version:

$ pip install https://github.com/astropy/astroquery/archive/master.zip

Using conda

It is also possible to install the latest astroquery with anaconda from the astropy channel:

$ conda install -c astropy astroquery

Building from source

The development version can be obtained and installed from github:

$ # If you have a github account:
$ git clone git@github.com:astropy/astroquery.git
$ # If you do not:
$ git clone https://github.com/astropy/astroquery.git
$ cd astroquery
$ python setup.py install

Requirements

Astroquery works with Python 2.7 and 3.3 or later.

The following packages are required for astroquery installation & use:

Using astroquery

All astroquery modules are supposed to follow the same API. In its simplest form, the API involves queries based on coordinates or object names. Some simple examples, using SIMBAD:

>>> from astroquery.simbad import Simbad
>>> result_table = Simbad.query_object("m1")
>>> result_table.pprint(show_unit=True)
MAIN_ID      RA         DEC     RA_PREC ... COO_QUAL COO_WAVELENGTH     COO_BIBCODE
          "h:m:s"     "d:m:s"           ...
------- ----------- ----------- ------- ... -------- -------------- -------------------
  M   1 05 34 31.94 +22 00 52.2       6 ...        C              R 2011A&A...533A..10L

All query tools allow coordinate-based queries:

>>> from astropy import coordinates
>>> import astropy.units as u
>>> # works only for ICRS coordinates:
>>> c = coordinates.SkyCoord("05h35m17.3s -05d23m28s", frame='icrs')
>>> r = 5 * u.arcminute
>>> result_table = Simbad.query_region(c, radius=r)
>>> result_table.pprint(show_unit=True, max_width=80, max_lines=5)
  MAIN_ID         RA          DEC      ... COO_WAVELENGTH     COO_BIBCODE
               "h:m:s"      "d:m:s"    ...
------------ ------------ ------------ ... -------------- -------------------
       M  42   05 35 17.3    -05 23 28 ...                1981MNRAS.194..693L
         ...          ...          ... ...            ...                 ...
V* V2114 Ori 05 35 01.671 -05 26 36.30 ...              I 2003yCat.2246....0C

For additional guidance and examples, read the documentation for the individual services below.

Catalog, Archive, and Other

A second index of the services by the type of data they serve. Some services perform many tasks and are listed more than once.

Simulations

Simulation services query databases of simulated or synthetic data

Other

There are other astronomically significant services, e.g. line list and atomic/molecular cross section and collision rate services, that don’t fit the above categories.

Developer documentation

The modules and their maintainers are listed on the Maintainers wiki page.

The Astroquery API Specification is intended to be kept as consistent as possible, such that any web service can be used with a minimal learning curve imposed on the user.

The following Astroquery modules are mostly meant for internal use of services in Astroquery, you can use them for your scripts, but we don’t guarantee API stability.