Все наверное знают или покрайней мере слышали про лингво лео, там есть словарь, который можно распечатать, он в виде:
<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()
Заранее простите за эдакий быдло код, только учусь.
Есть ряд вопросов, во первых в данной версии кода питон выводит только английские слова, перевод выводить не хочет, по чему, - не понимаю. Думаю что связано с кодировкой, но как с этим бороться?
Так же еще не стоят размеры клеток, это я не забыл, просто пока хочу разобраться в заполнении таблицы.
Еще хотелось бы услышать совет по поводу печати. Как лучше это реализовать?
Сделать выгрузку таблицы в оупен офис (к примеру) а там уже делать печать на двух сторонах, но опять таки как тогда сделать чтобы ячейки с переводом формировались зеркально или же все делать средствами питона, включая печать, если это возможно.