私はPythonでHTMLParserクラスを使用して基本的なWebクローラーを開発しています。PythonのHTMLParserを使用して特定のリンクを抽出する方法
def handle_starttag(self, tag, attrs):
if tag == 'a':
for (key, value) in attrs:
if key == 'href':
newUrl = urljoin(self.baseUrl, value)
self.links = self.links + [newUrl]
私はにページ上のすべてのリンクを見つけたいと思ったとき、これは非常によく働いていた:私はこのようになります修正のhandle_starttag方法と私のリンクを取得します。今私は特定のリンクを取得したいだけです。 HTMLParserは、ドキュメントの一部を取得することを意味し、SAXスタイルやストリーミングパーサーです
<td class="title"><a href="http://www.stackoverflow.com">StackOverflow</a><span class="comhead"> (arstechnica.com) </span></td>
タグのクラス名がtitleであるかどうかを確認してください。 – vireshas
これをどうお勧めしますか? – initWithStyle
Pythonのlxmlライブラリをチェックアウトしましたか?それはページ上のリンクや他の要素をかなり効率的に解析することができます。 http://lxml.de/ – dangerChihuahua007