astroquery
Functions and classes to access online astronomical data resources
Decision gist · record as of 2026-08-14
Yes. Astroquery is actively maintained, has no known vulnerabilities, low install friction, and a permissive license. It is the standard tool in the Python astronomy ecosystem for programmatic access to online data. Install it if you need to query astronomical databases from Python; skip it only if you work exclusively with local data or have no need for online lookups.AI-flagged interpretation of the facts on this page — verify before relying
Before you install
- Requires Python 3.9 or later and astropy version 5.0 or later.
- Low install friction with a pure-Python wheel distribution.
- Actively maintained as of 2026-08-13 with regular releases; last release was 328 days ago.
License · maintenance · safety
BSD (permissive) — BSD license (permissive) places no restrictions on use, modification, or distribution in proprietary or academic contexts.
last release 2025-09-20 (328 days) · last repo commit 2026-08-13 · 788 stars
0 known vulnerabilities (OSV.dev, 2026-08-14) · 431,349 downloads/mo, #6,718 on PyPI
Alternatives
Verify before relying
pip install astroquery
from astroquery.simbad import Simbad
result = Simbad.query_object('tet01 Ori C')
print(result)- Whether all available sub-packages (e.g. VizieR, NED, Gaia) are documented or discoverable in the current version.
- Performance characteristics when querying large result sets or multiple services in sequence.
- Rate-limiting or throttling policies enforced by the underlying web services.
What it is and what it does
Astroquery is an astropy-affiliated package that wraps access to multiple online astronomical databases and web services into a unified Python interface. Rather than writing HTTP requests or parsing HTML manually, you import a sub-package for the service you need (SIMBAD, VizieR, NED, etc.) and call standard query methods like `query_object` or `query_region` to retrieve structured data. It handles authentication (via keyring), parsing HTML and XML responses (using beautifulsoup4 and html5lib), and returning results as astropy tables.
The package is designed for astronomers and researchers who need to programmatically fetch observational data, object catalogs, or survey results from public databases. It abstracts away the details of each service's API or web interface, letting you write portable code that works across multiple data sources. Dependencies include numpy for numerical work, requests for HTTP communication, and pyvo for Virtual Observatory protocol support.
Use it for
- Query SIMBAD to retrieve coordinates, magnitudes, and cross-references for a named astronomical object.
- Retrieve spectroscopic or photometric data from online surveys for a region of sky defined by coordinates and radius.
- Automate batch lookups of multiple objects across different catalogs without manually visiting web interfaces.
- Integrate astronomical data retrieval into a data reduction or analysis pipeline.
- Access Virtual Observatory services programmatically for interoperable data discovery.
Worth the install?
AI-flagged interpretation of the facts on this page. Verify before relying on it.
Yes.
Astroquery is actively maintained, has no known vulnerabilities, low install friction, and a permissive license. It is the standard tool in the Python astronomy ecosystem for programmatic access to online data. Install it if you need to query astronomical databases from Python; skip it only if you work exclusively with local data or have no need for online lookups.
Install
astroquery on PyPI
Before you install
Low install friction with a pure-Python wheel distribution. Actively maintained as of 2026-08-13 with regular releases; last release was 328 days ago. Depends on well-established packages (numpy, astropy, requests, beautifulsoup4) with no exotic system requirements.
Requires Python 3.9 or later and astropy version 5.0 or later.
License in practice
BSD license (permissive) places no restrictions on use, modification, or distribution in proprietary or academic contexts.
Quickstart
pip install astroquery
from astroquery.simbad import Simbad
result = Simbad.query_object('tet01 Ori C')
print(result)
Verify before relying
- Whether all available sub-packages (e.g. VizieR, NED, Gaia) are documented or discoverable in the current version.
- Performance characteristics when querying large result sets or multiple services in sequence.
- Rate-limiting or throttling policies enforced by the underlying web services.
Package facts
| License | BSD permissive |
| Python support | Supports the current Python release >=3.9 |
| Install friction | Low. Pure-Python wheel |
| Runtime dependencies | 7 packagesnumpyastropyrequestsbeautifulsoup4html5libkeyringpyvo |
| Maintenance | Actively maintained 328 days since the last release |
| Last repo commit | |
| First released | |
| Downloads | 431,349 / month, #6,718 on PyPI 30-day window, as of 2026-08-14 |
| Known vulnerabilities | None known OSV.dev, checked 2026-08-14 |
| Classifiers | Intended Audience :: Science/ResearchLicense :: OSI Approved :: BSD LicenseOperating System :: OS IndependentProgramming Language :: PythonProgramming Language :: Python :: 3Topic :: DatabaseTopic :: Scientific/Engineering :: AstronomyTopic :: Software Development :: Libraries |
Evidence: astroquery-0.4.11-py3-none-any.whl
Tags
Let your AI agent find packages like this
Example. Real query, live index.
You found this page by searching. An agent finds it by wishing: SkillFed indexes 14,416 PyPI packages by what they can do, searchable in plain language.
wish › “astronomical data query”
- astroqueryAstroquery provides a Python interface to query and retrieve data…
- pyvoPyVO provides Python access to Virtual Observatory data archives,…
- lsst-daf-butlerProvides an abstraction layer for reading and writing astronomical…
Give your agent the search over MCP, or paste the wish link into any chat.
More Libraries packages
urllib3 is an HTTP client library that provides thread-safe connection pooling, SSL/TLS verification, multipart file uploads, request retries, compression support, and proxy handling for Python applications.
Requests is a Python HTTP library that simplifies sending HTTP/1.1 requests with automatic handling of headers, authentication, cookies, and response parsing.
Pluggy provides a plugin system that lets you define hook specifications and register implementations to be called in sequence, enabling extensible Python applications without tight coupling.
Install it if you're building an extensible application or framework.
Provides parsing, arithmetic, and recurrence rule computation for dates and times, with timezone support and iCalendar RFC compliance.
Install it if you need to parse flexible date strings, compute relative dates, handle timezones, or work with recurrence rules—it's the de facto choice for these tasks.
Six provides utility functions to write Python code that runs on both Python 2.7 and Python 3.3+, smoothing over language differences between the two versions.
pytest is a testing framework that lets you write test functions using plain assert statements and automatically discovers and runs them, with detailed failure reporting.
See also lsst-daf-butler · pyvo · specutils · asdf-astropy · regions · astropy-healpix · photutils · skyfield-data · pytest-astropy · cinemagoer