2017-05-24 7 views
0

私は何をしようとしていますが、文字列リスト(または配列)をウェブサイトのHTMLから取得し、指定されたインデックスを印刷しようとしています。私はテキストをretreieveに美しいスープからfind_all関数を使用しています。 beautifulsoupオブジェクトから直接オブジェクトにアクセスする方法はありますか?またはオブジェクトから文字列リストを作成する必要がありますか?もしそうなら、私の現在のコードはどうやって動いていませんか?文字列リストにbeautifulsoupテキストを割り当てます。

try: 
    html = urlopen("http://www.thesaurus.com/browse/" + word + "?s=t") 
    bsObj = BeautifulSoup(html.read(), "lxml") 
    for synonym in bsObj.find_all("span", class_="text"): 
     synlist = synlist.append(synonym.text) 
except: 
    print(word) 
print(synlist[2]) 

私は取得していますエラーは次のとおりです。

NameError: name 'synlist' is not defined 
+0

は、最初に 'synlist'配列を定義します。 – marmeladze

答えて

0

理由だけでは使用しないようにtrysynlistを定義する必要があります。

try: 
    html = urlopen("http://www.thesaurus.com/browse/" + word + "?s=t") 
    bsObj = BeautifulSoup(html.read(), "lxml") 
    synlist = bsObj.find_all("span", class_="text") 

except: 
    print(word) 

print(synlist[2].text) 

それ自体で配列を作る、なぜanotheを作るr?

EDIT:btw私は単語が何であるかは分かりませんが、それは他のどこかに存在すると仮定しています。また、Pythonのタブの間隔が間違っていた、と私はあなたが知っている?

0

あなたはこの synlist = []

関連する問題