13

urllib を使用して html ページを取得し、BeautifulSoup を使用して html ページを解析できますが、BeautifulSoup から読み取るファイルを生成する必要があるようです。

import urllib                                       
sock = urllib.urlopen("http://SOMEWHERE") 
htmlSource = sock.read()                            
sock.close()                                        
--> write to file

urllib からファイルを生成せずに BeautifulSoup を呼び出す方法はありますか?

4

2 に答える 2

23
from BeautifulSoup import BeautifulSoup

soup = BeautifulSoup(htmlSource)

ファイルの書き込みは不要です。HTML 文字列を渡すだけです。から返されたオブジェクトをurlopen直接渡すこともできます。

f = urllib.urlopen("http://SOMEWHERE") 
soup = BeautifulSoup(f)
于 2010-04-15T16:36:10.960 に答える
0

URL を開いて html をダウンロードし、gazpachoを使用して 1 回で解析可能にすることができます。

from gazpacho import Soup
soup = Soup.get("https://www.example.com/")
于 2020-10-09T23:28:13.370 に答える