urllib2を使用して開いているウェブページのタイトルを取得したいと思います。 htmlを解析して、必要なものを見つけるために、これを行うための最善の方法は何でしょうか(現在はタグだけですが、将来はさらに必要になるかもしれません)。Pythonのフェッチ<title>
この目的に適した構文解析ライブラリはありますか?
urllib2を使用して開いているウェブページのタイトルを取得したいと思います。 htmlを解析して、必要なものを見つけるために、これを行うための最善の方法は何でしょうか(現在はタグだけですが、将来はさらに必要になるかもしれません)。Pythonのフェッチ<title>
この目的に適した構文解析ライブラリはありますか?
はい、私はBeautifulSoup
をお勧めします:
soup = BeautifulSoup(html)
myTitle = soup.html.head.title
または
を the documentationから撮影
それは非常に堅牢だと関係なく、それがどのように厄介なHTMLを解析しません。
Beautiful Soupを使用してください。
html = urllib2.urlopen("...").read()
from BeautifulSoup import BeautifulSoup
soup = BeautifulSoup(html)
print soup.title.string
Beautiful Soupを試してみてください:あなたは、それは単にのタイトルを取得している場合は
url = 'http://www.example.com'
response = urllib2.urlopen(url)
html = response.read()
soup = BeautifulSoup(html)
title = soup.html.head.title
print title.contents
なぜあなたは1つのタスクに対して余分なライブラリ全体をインポートしていますか?正規表現はありませんか?第三者であるbs4やmechではないurllibのリクエストではありませんでしたか?標準ライブラリで行うことはhtmlを解析して文字列にマッチさせ、次に'>'
'<'
をreまたはwhatevesで分割します。パイソン2ザッツ
N=(len(html))
for a in html(N):
if '<title>' in a:
Title=(str(a))
私は、あなたが
それを取り除くことができると思う答えを愛します。それは私の質問でした、なぜあなたは1つの呼び出しのために全体的に他の依存関係を追加しますか?あなたの知恵をありがとう:) – raTM