0
我试图确定一个下载的文件在Python中的大小,然后用BeautifulSoup解析和处理它。 (我打算很快更新到ElementTree,但简单地玩过它,它并不能解决我在这里提出的问题,据我所知)。使用文件对象之前确定文件对象的大小
import urllib2, BeautifulSoup
query = 'http://myexample.file.com/file.xml'
f = urllib2.urlopen(query)
print len(f.read())
soup = BeautifulSoup.BeautifulStoneSoup(f.read())
此代码上不去,因为当我read()
文件首次在len()
,就自然达到一个EOF等文件对象是然后我想与BeautifulSoup访问它的时间空。
我的初步想法是简单地复制一个fcopy = f
行的对象,但这导致我学习我只是引用底层对象,并没有得到任何东西。
然后我认为fcopy = copy.copy(f)
会创建对象的真实副本,但显然不是读取f仍然导致fcopy是一个空文件对象。
我甚至读到传递对象作为函数的参数,以获得这一轮,并试图将以下代码
import urllib2, BeautifulSoup
def get_bytes(file):
return len(file.read())
query = 'http://myexample.file.com/file.xml'
f = urllib2.urlopen(query)
print(get_bytes(f))
soup = BeautifulSoup.BeautifulStoneSoup(f.read())
但我有同样的问题。如何在不有效销毁文件的情况下确定此对象的文件大小?
卫生署!所以弗利皮明显!谢谢 :) – fearoffours 2010-10-18 13:13:52