Python 如何使用os.system()从stdin获取数据

Python 如何使用os.system()从stdin获取数据,python,shell,curl,urllib,os.system,Python,Shell,Curl,Urllib,Os.system,我发现使用脚本从维基百科下载文本的唯一可靠方法是使用cURL。到目前为止,我唯一能做的就是调用os.system()。即使输出在pythonshell中正确显示,我似乎无法让函数返回除退出代码以外的任何内容(0)。或者,有人可以演示如何正确使用urllib回答问题, Python有一个子流程模块,允许您与派生的流程进行交互 它允许您读取所调用进程的标准输出,甚至将项目发送到标准输入 然而,正如您所说,urllib是一个更好的选择。如果您选择stackoverflow,我相信您会发现至少10个其他

我发现使用脚本从维基百科下载文本的唯一可靠方法是使用cURL。到目前为止,我唯一能做的就是调用
os.system()
。即使输出在pythonshell中正确显示,我似乎无法让函数返回除退出代码以外的任何内容(
0
)。或者,有人可以演示如何正确使用
urllib

回答问题, Python有一个子流程模块,允许您与派生的流程进行交互

它允许您读取所调用进程的标准输出,甚至将项目发送到标准输入


然而,正如您所说,urllib是一个更好的选择。如果您选择stackoverflow,我相信您会发现至少10个其他相关问题…

作为urllib的替代,您可以使用libCurl。

中的

这将打印Python Wikipedia文章的源代码。我建议您看看深入Python了解更多细节

使用来自

编辑:您可能还想看看

Edit2:根据S.Lott的建议添加了urllib2示例

谢谢,内置的帮助浏览器几乎永远无法理解。urllib2做的几乎是相同的事情,而且它处理重定向等事情更优雅。@S.Lott我同意。我只是在寻找一个Gamefank可以从中学习更多的资源,而不仅仅是从中复制代码,结果是我想到的第一个资源,潜入Python,使用了urllib。
import urllib
sock = urllib.urlopen("http://en.wikipedia.org/wiki/Python_(programming_language)")
htmlsource = sock.read()
sock.close()
print htmlsource
import urllib2
f = urllib2.urlopen('http://www.python.org/')
print f.read(100)