astroquery: vizier.query_region на большой области не работает

Я пытаюсь сделать относительно большие запросы в каталоге 2MASS с astroquery.vizier.VizierClass.query_region(),

В то время как это работает для маленьких областей, это терпит неудачу для большой области. Вот код, который я использую:

from astroquery.vizier import Vizier
import astropy.units as u
import astropy.coordinates as coord

twomass_query=Vizier(columns=["Jmag","Hmag","Kmag","e_Jmag","e_Hmag","e_Kmag","Qflg"],
                     catalog=["II/246/out"])
twomass_query.ROW_LIMIT = -1
twomass_query.TIMEOUT = 3600
table=twomass_query.query_region(
    coord.SkyCoord(ra=159.5, dec=-64.6, unit=(u.deg, u.deg), frame='icrs'),
    width=[10*u.deg,10*u.deg],
    return_type='asu-binfits')

Я получаю длинное сообщение об ошибке, оканчивающееся на:

ConnectionError: ('Connection aborted.', BadStatusLine("''",))

Синтаксис правильный, так как запрашивает меньшее поле с, например,

width=[3*u.deg,3*u.deg]

работает отлично.

Я также попытался переключиться на другой сервер ViZieR (vizier.cfa.harvard.edu), чтобы исключить pb на стороне сервера, но, к моему удивлению, он дал мне другую ошибку, заканчивающуюся:

ChunkedEncodingError: ('Connection broken: IncompleteRead(0 bytes read)', IncompleteRead(0 bytes read))

1 ответ

Решение

Теперь я почти уверен, что это ошибка сервера VizieR. Я не могу выполнить запрос на веб-странице Vizier, он также возвращает ошибку или пустую таблицу. Похоже, проблема заключается в запрошенном формате вывода (return_type='asu-binfits'). Если я запрашиваю Votable, то он работает на веб-странице Vizier, а также с astroquery.

Я написал в службу поддержки CDS, чтобы сообщить о проблеме.

Надеюсь, они скоро это исправят, так как двоичные таблицы FITS намного быстрее запрашивают (скачивают), чем голосовые таблицы ASCII! Я подозреваю, что есть способ запросить двоичный Votable? что такое соответствующий return_type?

Другие вопросы по тегам