相続、親が弱ってきたら銀行の預金は親の面倒を見ているものが全て解約して管理すべきである、銀行は解約させない!!

python finance

Python
スポンサーリンク

参考サイト

取得したいデータの位置を確かめる

webスクレイピングではHTML/XML中の特定の位置にあるテキストを抽出するのが目的となるため、まず対象のデータ位置を確認します。この際、Chromeの検証機能が使いやすいです。(以下参照)

Chromeデベロッパー・ツール(要素を検証)の基礎的な使い方

ページを右クリックして「検証」を選択します。(Ctrl+Shift+Iでもよい)
すると画面右半分にHTML要素が現れ、タグを選択すると画面上の対応する部分が反転します。これを使って取得したいデータを特定できるところまで掘り下げていきます。

なおYahoo!ファイナンスの場合は以下の様な階層となっています。

<html>
<body>
<div id="wrapper">
<div id="contents">
<div id="contents-body">
<div id="main">
<div class="padT12 marB10 clearFix">
<table class="boardFin yjSt marB6">
<tbody>
<tr>
<td>
ここに基準価格とか

取得したいデータ位置をXPathで書く

XPathとはHTML/XML文書中の任意のコンテンツの位置を表すためのフォーマットです。Chromeでは右クリック -> Copy -> Copy Xpath
でXPathが取得できます。(以下参照)

Chromeだけで任意のノードのXPathを簡単に取得 たぶん革命

今回はid=mainのdiv要素以下にあるテーブルのtd要素がすべてほしいので以下のようにしました。

//*[@id="main"]/div/table//td

parser()でHTMLを取得し、XPathで必要な要素を抽出する

ここからはPythonで行います。urlをlxml.html.parser()に渡してHTML_Elementsを取得し、そこからXPathで指定した要素を抽出します。最後に型式を整えて[日付, 基準価格, 純資産総額]型式のリストで出力します。日付は最後にyyyymmdd型式の文字列としました。

Python
スポンサーリンク
シェアする
ふじやんをフォローする
スポンサーリンク

コメント