カテゴリー:
クローラ
閲覧数:433 配信日:2017-03-02 21:49
A.正規表現を使う方法
Pythonで正規表現を使う時はreモジュールを使用
・要素を指定して、値を抽出
コード例
▼HTML
<html>
<head>
<meta charset='utf-8' />
</head>
<body>
<h1>クローリングとスクレイピング</h1>
<div id="articleInfo">
<p>
<span class="timestamp">2017-3-2 21:15:35</span>
<span class="author"><a href="http://programming-term.w4c.work/">プログラミング用語</a></span>
</p>
</div>
<div id="articleText">
ウェブサイトのクローリングとスクレイピングについて
</div>
</body>
</html>
▼Python
#coding: utf-8
import re
#変数htmlには上記のHTMLがstrで代入されているとします。
#変数title, timestamp, author, author_link, bodyにそれぞれタイトル、投稿日時、著者、著者のリンク、記事本文が代入されます。
title = re.compile('\<h1\>(.+?)\<\/h1\>', re.MULTILINE|re.DOTALL).findall(html)[0]
timestamp = re.compile('\<div id="articleInfo"\>.+?\<span class="timestamp"\>(.+?)\<\/span\>', re.MULTILINE|re.DOTALL).findall(html)[0]
author_link, author = re.compile('\<div id="articleInfo"\>.+?\<span class="author"\>\<a href="(.+?)"\>(.+?)\<\/a\>\<\/span\>', re.MULTILINE|re.DOTALL).findall(html)[0]
body = re.compile('\<div id="articleText"\>(.+?)\<\/div\>', re.MULTILINE|re.DOTALL).findall(html)[0]