Форум сайта python.su
0
Всем доброго времени суток!
Все наверное знают или покрайней мере слышали про лингво лео, там есть словарь, который можно распечатать, он в виде:
<tr >
<td class=“ind gray”>14</td>
<td><b>and</b></td>
<td class=“transcr”></td>
<td class=“tran”>и, a (соед. союз)</td>
</tr>
# -*- coding: utf-8 -*- import lxml.html myfile = open("lingvo.htm", "r") url = lxml.html.document_fromstring(myfile.read()) save = open('result.txt', 'w') q = '<table>\n' save.writelines(q) for topic in url.cssselect('td b'): save.writelines(topic) t = '\t<tr>\n\t\t<td>' d = topic.text e = '</td>\n\t</tr>\n' save.writelines(t) save.writelines(d) save.writelines(e) for perevod in url.cssselect('td.tran'): save.writelines(perevod) t = '\t<tr>\n\t\t<td>' d = perevod.text e = '</td>\n\t</tr>\n' save.writelines(t) save.writelines(d) save.writelines(e) q = '</table>' save.writelines(q) save.close() e = raw_input()
Отредактировано Zemond (Сен. 25, 2012 15:55:00)
Офлайн
253
что значит не хочет выводить?
ниже для питона 2.x генератор текста. Правда несколько из пушки по воробушкам.
#!/usr/bin/env python # -*- coding: cp1251 -*- from mako.template import Template tpl=u""" %for en,ru in li: <tr > <td class="ind gray">14</td> <td><b>${en}</b></td> <td class="transcr"></td> <td class="tran">${ru}</td> </tr> %endfor """ li=[[u"a",u"перевод"],[u"c",u"хоровод"]] mytemplate = Template(tpl) print mytemplate.render(li=li)
Офлайн