基本Python StringIO - 为什么GetValue()没有返回?

时间:2011-08-25 12:45:42

标签: python stringio

我有基本的python问题..在下面的例子中没有返回错误但是使用pprint显示所有变量的内容显示 contents =''' - 为什么这可能是案件?

import sys, os, re, StringIO, pprint, time
from BeautifulSoup import BeautifulSoup, BeautifulStoneSoup
import pycurl

url = "http://google.com/";

strio = StringIO.StringIO()

curlobj = pycurl.Curl()
curlobj.setopt(pycurl.URL, url)
curlobj.perform()
curlobj.close()

contents = strio.getvalue()
strio.close()

有什么想法吗?感谢

2 个答案:

答案 0 :(得分:5)

查看涉及StringIO的行。

strio = StringIO.StringIO()
contents = strio.getvalue()
strio.close()

这些陈述均未从curlobj中提取内容。所以strio是空的。


编辑(感谢@Alexander Cameron和@agf):

也许你的意思是

curlobj.setopt(pycurl.WRITEFUNCTION, strio.write)    

答案 1 :(得分:2)

您永远不会对strio变量做任何事情。您必须将其传递给某个函数才能将任何内容写入其中。