如何使用 PHP 和 Python 进行 STDIN 和 STDOUT 以使用 html2text 并获取 Markdown 格式的文本?
我正在通过 STDIN 将 HTML 文本从 PHP 发送到 Python。我的目标是使用 Aaron Swartz 的脚本“html2text.py”并通过 STDOUT 将结果打印到 PHP。
简同志给了我指示,并为我指明了正确的方向。这是我的测试:
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”(尽管我无法让它与最后一个一起使用)。
I am sending an HTML text from PHP to Python via STDIN. My objctive is to use Aaron Swartz's script "html2text.py" and to print the result to PHP via STDOUT.
Camarade Jan gave me the word and put me in the right direction. Here's my test:
PHP code:
$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 code:
#! /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])
Result:
Array
(
[0] => **Hello**_world!_
[1] =>
[2] =>
)
All the files are in the same directory (under chmod 077). I am using Aaron Swartz's html2text.py version 2.39 and also installed "python-html2text.noarch" on my Fedora 14 (though I couldn't make it work with this last one).
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
您只是将最后一行传递给 html2text ,并且您没有正确使用 html2text ,请改为执行以下操作:
You're just passing the last line to html2text , and you are not using html2text correctly do this instead :