2016年12月27日火曜日

開発環境

HTMLをパースを、 Python の BeautifulSoup を利用したら、どんな感じになるか気になったので。

コード(Emacs)

#!/usr/bin/env python3
# -*- coding: utf-8 -*-

from bs4 import BeautifulSoup
from urllib import request
import re

html = request.urlopen('http://www.yahoo.co.jp')
bs_obj = BeautifulSoup(html, 'lxml')
topics = bs_obj.find_all('a', href=re.compile(
    r'^http://news.yahoo.co.jp/pickup/.*$'))

for topic in topics:
    print(topic.text)

入出力結果(Terminal)

$ ./get_yahoo_topics.py 
東芝 1千億円規模損失計上へ
公安調査庁 5年連続で増員へ
賭けマージャン 起訴可能性は
中学生自殺 いじめアンケ廃棄
コロンビア墜落 燃料切れ原因
飲酒の中学生 消火器を噴射
スマスマ 協議の末タブー解禁
瞬間最高は中居の涙 27.4%
$

クロージャーで簡略化した方と比べた時、「Yahooのトップページからトピックスを抜き出す」くらいの処理だと、コードの長さ、分かりやすさ等、そんなに違いはないかも。

0 コメント:

コメントを投稿