Как напечатать переменную Python с содержанием HTML в виде «страницы» в терминале? - PullRequest
2 голосов
/ 10 ноября 2011

У меня есть переменная python с html-содержимым, например

>>>>a='<html><h1><a href="http://www.google.com">Link to Google<></h1></html>'

Как я могу распечатать ее как html?

Я хотел быкак напечатать эту переменную в моем терминале, и я хотел бы получить результат, подобный следующему:

a.html

OBS .: Если python может сделать это без сценария оболочки или других программ, я предпочту это.

Ответы [ 3 ]

1 голос
/ 10 ноября 2011

, чтобы обрезать теги из приведенного выше примера, который я использовал:

    >>> a='<html><\p>My example text<p></html>'
    >>> while '<' in a or '>' in a:
    ...     a = a.replace(a[a.find('<'):a.find('>')+1],"")
    ... 
    >>> a
    'My example text'

Это должно работать, если текст, который вы хотите извлечь, не содержит «<» или «>», или если переменная недопустима в формате html.

1 голос
/ 05 мая 2012

Я успешно выполнил программу на Python a.py , как показано ниже:

a='<html><h1>My example text</h1></html>'
file=open("a.html","w")
file.write(a+'\n')
file.close

, а затем выполнил другой сценарий оболочки a.sh что-то вроде:

#!/bin/sh
/usr/bin/env python a.py
w3m a.html

Но я думаю, что это не очень хороший способ, разве нет такого, который использует только Python?

1 голос
/ 10 ноября 2011

Я надеюсь, что кто-то может дать вам лучший ответ, но я все равно расскажу вам свою идею: вы можете использовать html2text - я думаю, что это скрипт Python - или, html2pdf, а затем pdf2text.И, наконец, распечатать сгенерированный текст, конечно.Надеюсь, это поможет.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...