コード例 #1
0
ファイル: fetch.py プロジェクト: ehabkost/busmap
def fetch_horarios(idhor, nome):
	c = env.db.cursor()

	idlinha = get_linha_hor(idhor, nome)

	#TODO: check if this really works
	c.execute('start transaction')

	try:
		c.execute('delete from hs, h \
			using horsets hs, horarios h \
			where hs.idlinha=%s and h.idset=hs.id',
			[idlinha])

		html = horarios.get_horarios_html(idhor)
		for pto,dia,apartir,horas in horarios.parse_hor_html(html):
			print 'ponto: %s, dias: %s' % (pto, dia)
			idponto = get_ponto_hor(pto)
			d = dias.id_dias(dia)
			c.insert_one('horsets', idlinha=idlinha, idponto=idponto,
				dia=d, apartir=apartir)
			idset = c.lastrowid
			for sp,h in horas:
				c.insert_one('horarios',
					idset=idset, hora=h, special=sp)

	except:
		c.execute('rollback')
	else:
		c.execute('commit')
	c.close()
コード例 #2
0
ファイル: hor-html2txt.py プロジェクト: ehabkost/busmap
import horarios

import sys


fh = sys.stdout
for pto,dias,apartir,horas in horarios.parse_hor_html(sys.stdin.read()):
	fh.write("Ponto: %s - %s\nValido a partir de: %s\n\n" \
			% (pto,dias,apartir))
	l = 0
	for sp,h in horas:
		if sp: bold='*'
		else: bold=''

		s = "%s%s " % (bold, h)

		# break lines
		l += len(s)
		if l > 80:
			l = len(s)
			s = '\n' + s
		fh.write(s)
	fh.write("\n\n\n")