Я отправляю HTML-текст с PHP на Python через STDIN. Моя задача – использовать сценарий Aaron Swartz «html2text.py» и напечатать результат на PHP через STDOUT.
Camarade Jan дал мне слово и поставил меня в правильном направлении. Вот мой тест:
PHP-код:
$t='<p><b>Hello</b><i>world!</i></p>'; $scaped=preg_quote($t,"/")."\n";//\<p\>\<b\>Hello\<\/b\>\<i\>world\!\<\/i\>\<\/p\> exec('python hi.py '.$scaped,$r); print_r($r);//result
Код Python:
#! /usr/bin/env python import html2text import sys #print html2text.html2text(sys.stdin.read()) #this part of the code didn't work out... print html2text.html2text(sys.argv[1])
Результат:
Array ( [0] => **Hello**_world!_ [1] => [2] => )
Все файлы находятся в одном каталоге (под chmod 077). Я использую html2text.py версии 2.39 Aaron Swartz, а также установил «python-html2text.noarch» на моем Fedora 14 (хотя я не мог заставить его работать с этим последним).
Вы просто передаете последнюю строку в html2text, и вместо этого вы не используете html2text правильно:
import html2text import sys print html2text.html2text(sys.stdin.read())