2018年6月29日金曜日。突然、東京証券取引所のサイトのスクレイピングプログラムが全滅。
どうしたんだ Hey Hey Baby
バッテリーはビンビンだぜ
と思いつつ調べる。
正規表現でデータを取り出せていないようだ。
HTMLソースが変わったのかとWebブラウザで東証のページを開いてHTMLソースを見てみる。
問題はないようだが、スクレイピングが失敗している。
どうしたんだ Hey Hey Baby
機嫌直してくれよ
とお願いしても機嫌は直らないようだ。
どうして動かないのかわからない。
困った。
スクレイピングプログラムからのHTTPの応答を調べてみる。
応答が
<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
<html><head>
<title>301 Moved Permanently</title>
</head><body>
<h1>Moved Permanently</h1>
<p>The document has moved <a href="https://www.jpx.co.jp/markets/statistics-equities/short-selling/">here</a>.</p>
</body></html>
ん??
document has movedだって?
犯人はhttpsだ。東証のサイトもhttpからhttpsに変えやがった。
スクレイピングにはcurlを使っているので修正は簡単。取得対象のURLをhttpからhttpsに変更するのみ。
まずは試しに一箇所修正して実効してみる。動いた。
東証のURLの全ての箇所をhttpsに修正して、失敗していたスクレイピングプログラムを手動で起動して作業完了。
おしまい。
0 件のコメント:
コメントを投稿