我尝试使用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))
答案 0 :(得分:1)
我现在几乎可以肯定这是VizieR服务器的错误。我无法在Vizier网页上执行请求,它也会返回错误或空表。问题似乎是请求的输出格式(return_type ='asu-binfits')。如果我要求Votable,那么它可以在Vizier网页上运行,也可以使用astroquery。
我已写信给CDS服务台以通知问题。
希望他们能尽快修复它,因为二进制FITS表比ASCII可选项更快地请求(下载)! 我怀疑有办法请求二进制Votable?什么是相应的return_type?