質問
私はurllib2のを使用して開いたWebページのタイトルを取得したいです。 HTMLを解析し、私は(今だけ-tagのためではなく、将来的にはより多くを必要とする場合があります)必要なものを見つけるために、これを行うための最善の方法は何ですか。
この目的のために良いパースlibにありますか?
解決
はい、私が推薦する BeautifulSoupする
あなたがタイトルを取得している場合、それは単にです。
soup = BeautifulSoup(html)
myTitle = soup.html.head.title
または
myTitle = soup('title')
タグこのドキュメントrel="noreferrer"> これは非常に堅牢だと関係なく、それがどのように厄介なHTMLを解析しません。
他のヒント
美しいスープを試します:
url = 'http://www.example.com'
response = urllib2.urlopen(url)
html = response.read()
soup = BeautifulSoup(html)
title = soup.html.head.title
print title.contents
なぜあなたは一つのタスクのための全体の余分なライブラリをインポートする男です。いいえ正規表現ませんか?第三者いるurllibはないBS4やメカの要求ではなかったですか?標準ライブラリは、HTMLを解析し、文字列にマッチして行うには、その後の再またはwhatevesで'>'
の'<'
を分割します。
N=(len(html))
for a in html(N):
if '<title>' in a:
Title=(str(a))
のpython 2は、私が思うthatsの、あなたはそれを取り除くことができます。
美しいスープを使用します。
html = urllib2.urlopen("...").read()
from BeautifulSoup import BeautifulSoup
soup = BeautifulSoup(html)
print soup.title.string
所属していません StackOverflow