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