如何使用PHP和Python STDIN和STDOUT使用html2text并获得markdown格式文本?

时间:2011-01-14 00:21:25

标签: php python html markdown text-files

我通过STDIN将PHP文本从PHP发送到Python。我的目标是使用Aaron Swartz的脚本“html2text.py”并通过STDOUT将结果打印到PHP。

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下)。我正在使用Aaron Swartz的html2text.py版本2.39,并在我的Fedora 14上安装了“python-html2text.noarch”(虽然我无法使用最后一个)。

1 个答案:

答案 0 :(得分:2)

您只是将最后一行传递给html2text,并且您没有正确使用html2text,而是执行此操作:

import html2text
import sys

print html2text.html2text(sys.stdin.read())