astroquery:大面积的vizier.query_region失败了

时间:2016-06-08 15:33:10

标签: python astropy astroquery

我尝试使用astroquery.vizier.VizierClass.query_region()对2MASS目录进行相对较大的查询。

虽然它适用于小区域,但对于大面积区域而言则失败。 这是我使用的代码:

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 个答案:

答案 0 :(得分:1)

我现在几乎可以肯定这是VizieR服务器的错误。我无法在Vizier网页上执行请求,它也会返回错误或空表。问题似乎是请求的输出格式(return_type ='asu-binfits')。如果我要求Votable,那么它可以在Vizier网页上运行,也可以使用astroquery。

我已写信给CDS服务台以通知问题。

希望他们能尽快修复它,因为二进制FITS表比ASCII可选项更快地请求(下载)! 我怀疑有办法请求二进制Votable?什么是相应的return_type?