前回のつづき。
成果物
実行結果
前回取得したXMLファイルでやってみた。
$ python3 main.py やってみる https://blog.hatena.ne.jp/ytyaru/ytyaru.hatenablog.com/atom/entry?page=XXXXXXXXXX Pandocをインストールする Dockerについて調べてみた AsciiDoctorをインストールする FirefoxにAsciiDocのプレビューアをインストールする plumaにAsciiDocのシンタックスハイライトを設定した Pythonでタイムゾーンを扱う AtomにAsciiDoc用プラグインをインストールした Atomを日本語化した Mintの標準テキストエディタPlumaの設定をみてみた LinuxMintにフォントをインストールした
1行目の「やってみる」はブログのタイトル。2行目は次ページのURL。それ以降は記事のタイトル。
ところで、仕様書では7件ずつとあるが10件でてるのだが。
はてなブログAtomPub - Hatena Developer Center
前回
http://ytyaru.hatenablog.com/entry/2017/06/23/000000
今回
今回はブログのタイトルと記事のタイトルを取得する。BeautifulSoupを使って。
参考
PythonとBeautiful Soupでスクレイピング - Qiita
BeautifulSoup
インスタンス生成
soup = BeautifulSoup(xml_text, 'lxml')
soupインスタンスを使って対象のXMLから任意のデータを取得する。
要素を取得する(1つ)
element = soup.find('tag_name')
element = soup.tag_name
どちらでも可。
要素を取得する(複数)
elements = soup.find_all('tag_name')
要素のテキストノードを取得する
element = soup.find('p').string
p
要素のテキストノード値を返す。
属性の値を取得する
attr = soup.a.get("href")
a
要素のhref属性値を返す。
所感
細かいことは調べながら。