次のコードで mechanize と BeautifulSoup を混在させようとすると、エラーが発生します。
from BeautifulSoup import BeautifulSoup
import urllib2
import re
import mechanize
br=mechanize.Browser()
br.set_handle_robots(True)
br.open('http://tel.search.ch/')
br.select_form(nr=0)
br.form["was"] = "siemens"
br.submit()
content = br.response
soup = BeautifulSoup(content)
for a in soup.findAll('a',href=True):
if re.findall('title', a['href']):
print "URL:", a['href']
br.close()
最初から br.submit() までのコードは mechanize で正常に動作し、 for ループは BeautifulSoup でも正常に動作します。しかし、br.submit() の結果を BeautifulSoup に渡す方法がわかりません。2 行:
content = br.response
soup = BeautifulSoup(content)
明らかに間違っています。スープ = BeautifulSoup(content) のエラーが表示されます。
TypeError: 文字列またはバッファが必要です
誰でも助けることができますか?