2011-05-31 3 views
3

私はサービスからhtmlの束をつかんで、それをわずかに解析しています。 最初のイメージタグからリンクを取得する方法を探しています。Python/Djangoを使用してhtmlから最初のイメージを取得

このjQueryのコードのように似た何か:

var imagelink = $('img:first', feed.content).attr('src'); 

しかし、もちろん唯一のPython/Djangoの(サーバーがGoogleのApp Engine上で動作)を使用。むしろ単純なリンクをつかむために他のライブラリを使用することはありません。

答えて

0

私は、HTMLのいずれかのより多くの構文解析を行う場合、私はおそらくになります提案された図書館の1つに。しかし今のところ私はこれを次のように解決しました:

私はこれを後で改良するつもりですが、今のところそれはトリックです。上記のコードのアイデアや改善点についてお気軽にお聞かせください。

+0

私の自身の答えがランクダウンした理由をよく分かりません。当時私が探していたのとまったく同じものでした。ライブラリを使用せずにimgを見つける簡単な答え。 – Zammbi

7

あなたはこれを行うにはBeautifulSoupを使用することができます。

http://www.crummy.com/software/BeautifulSoup/

それは、XML/HTMLパーサです。このような

何かが動作するはずなどですから、生のHTMLを渡し、その後、あなたは、特定のタグ/ attrsにのためにそれを検索することができます。

tree = BeautifulSoup(raw_html) 
img_link = (tree.find('img')[0]).attr['src'] 
+1

http://lxml.de/elementsoup.html –

+0

お役立ち情報1つのリンク(src)のためだけに、私はライブラリなしの方法を探しています。現在のところ、私のpythonのスキルは、文字列を検索しようとして偉大ではありませんが、現在学習しています... – Zammbi

+2

ファイル内の1つのリンクだけですが、解析するHTMLがたくさんあります。あなたは正規表現を使っての最初のインスタンスを見つけようとすることができますが、BeautifulSoupのアプローチは最も簡単です –

関連する問題