#!/usr/bin/python2.4
# -*- coding: utf-8 -*-
import wikipedia, string, urllib2
from atomobot_language import AtomobotLanguageSlovak
from wizzo_bot_support import WizzoBotSuhvezdie
from operator import itemgetter
lang = AtomobotLanguageSlovak()
suhv = WizzoBotSuhvezdie()
typ = {
' Gx': u'[[galaxia]]',
' OC': u'[[otvorená hviezdokopa]]',
' Gb': u'[[guľová hviezdokopa]]',
' Nb': u'jasná [[hmlovina]]',
' Pl': u'[[planetárna hmlovina]]',
'C+N': u'[[hmlovina]] a [[hviezdokopa]]',
'Ast': u'[[Asterizmus]] alebo skupina [[hviezda|hviezd]]',
' Kt': u'uzol alebo [[hmlovina]] v inej galaxii',
'***': u'[[trojhviezda]]',
' D*': u'[[dvojhviezda]]',
' *': u'samostatná [[hviezda]]',
' ?': u'objekt neistého typu',
' ': u'neidentifikovaný objekt',
' -': u'neexistujúci objekt',
' PD': u'chyba fotografickej platne',
}
ic = {}
lines = {}
subor = urllib2.urlopen("ftp://cdsarc.u-strasbg.fr/cats/VII/118/ngc2000.dat")
for k in range(13226):
lines[k] = subor.readline()
items = lines.items()
items.sort(key = itemgetter(1))
for j in range(1, 23):
clanok = u"""{{IC navigátor}}
{| class=wikitable
! Názov || Typ || [[Rektascenzia]] || [[Deklinácia]] || Najväčší rozmer || [[Magnitúda]] || [[Súhvezdie]]
"""
for i in range(7840+j*250-250, 7840+j*250):
if i < (7840+5386):
line = items[i][1]
ic['nazov'] = line[0:6]
ic['nazov'] = ic['nazov'].replace(" ", "")
ic['nazov'] = ic['nazov'].replace("I", "IC ")
ic['rektascenzia'] = line[10:12]+u"h "+line[13:17]+"'"
ic['rektascenzia'] = ic['rektascenzia'].replace(".", ",")
ic['deklinacia'] = line[19:22]+u"°" + line[22:25]+u"'"
ic['typ'] = u"%s" % typ[line[6:9]]
ic['suhv'] = u"%s" % suhv.suhvezdie[line[29:32].upper()]
ic['suhvezdie'] = u"[[Súhvezdie %s|%s]]" % (suhv.suhvezdie[line[29:32].upper()],
suhv.suhvezdie[line[29:32].upper()])
ic['rozmer'] = line[34:38]
ic['rozmer'] = ic['rozmer'].replace(". ", "")
ic['rozmer'] = ic['rozmer'].replace(".", ",")
if ic['rozmer']!=" ": ic['rozmer'] = u"%s'" % ic['rozmer']
ic['mag'] = line[40:44]
ic['mag'] = ic['mag'].replace(". ", "")
ic['mag'] = ic['mag'].replace(".", ",")
clanok += u"""|-
! [[%(nazov)s]]
| %(typ)s || %(rektascenzia)s || %(deklinacia)s || %(rozmer)s || %(mag)s || %(suhvezdie)s
""" %ic
clanok += u"""|}
{{IC navigátor}}
[[Kategória:IC objekty|*]]
[[Kategória:Zoznamy astronomických objektov]]
"""
print clanok
posledny = j*250
if posledny > 5386: posledny = 5386
site = wikipedia.getSite()
stranka = wikipedia.Page(site, u"Zoznam IC objektov %s-%s" % (j*250-249, posledny))
stranka.put(clanok, u"vytvorenie")