Python - 如何读取 URL 的内容两次?
Python - How to read the content of an URL twice?
我正在使用 'urllib.request.urlopen' 阅读 HTML 页面的内容。之后,我想将内容打印到我的本地文件,然后进行某种操作(例如,在该页面上构造一个解析器,例如BeautifulSoup)。
问题
第一次读取内容(并将其写入文件)后,我无法第二次读取内容以对其执行某些操作(例如,在其上构建解析器)。它只是空的,我无法将光标(seek(0)) 移回开头。
import urllib.request
response = urllib.request.urlopen("http://finance.yahoo.com")
file = open( "myTestFile.html", "w")
file.write( response.read() ) # Tried responce.readlines(), but that did not help me
#Tried: response.seek() but that did not work
print( response.read() ) # Actually, I want something done here... e.g. construct a parser:
# BeautifulSoup(response).
# Anyway this is an empty result
file.close()
我该如何解决?
非常感谢!
您无法阅读回复两次。但是您可以轻松地重复使用保存的内容:
content = response.read()
file.write(content)
print(content)
我正在使用 'urllib.request.urlopen' 阅读 HTML 页面的内容。之后,我想将内容打印到我的本地文件,然后进行某种操作(例如,在该页面上构造一个解析器,例如BeautifulSoup)。
问题 第一次读取内容(并将其写入文件)后,我无法第二次读取内容以对其执行某些操作(例如,在其上构建解析器)。它只是空的,我无法将光标(seek(0)) 移回开头。
import urllib.request
response = urllib.request.urlopen("http://finance.yahoo.com")
file = open( "myTestFile.html", "w")
file.write( response.read() ) # Tried responce.readlines(), but that did not help me
#Tried: response.seek() but that did not work
print( response.read() ) # Actually, I want something done here... e.g. construct a parser:
# BeautifulSoup(response).
# Anyway this is an empty result
file.close()
我该如何解决?
非常感谢!
您无法阅读回复两次。但是您可以轻松地重复使用保存的内容:
content = response.read()
file.write(content)
print(content)