Pythonでロト6の最新抽選結果を取得し、Slackに投稿するプログラム

Share

こんにちは!!ようこそ、当ブログgcbgardenへ。管理人のsakurabaaa(@sakurabaaa_g)です。

本記事では、Pythonでロト6の抽選結果をSlackに投稿するプログラムコードを紹介します。

no-img2
さやか

先日の記事でロト6の番号をPythonに選ばせといて、
今度は結果をSlackに投稿するのかよ〜〜

先日、以下の記事でPythonにロト6の番号を勝手に選ばせ、それをSlackに投稿するプログラムを書きました。

ゆくゆくは機械学習なんかで予測もしてみたい。笑

こちらの記事でこんなしょうもないことを始めたきっかけは書いているのでよかったらみてください。

Pythonでロト6の番号を選んで抽選日にSlackに投稿するプログラム
こんにちは!!ようこそ、当ブログgcbgardenへ。管理人のsakurabaaa(@sakurabaaa_g)です。 最近ネ...

LINKPythonでロト6の番号を選んで抽選日にSlackに投稿するプログラム

今回の取り組みは、結果もSlackに投稿してくれたら便利じゃない!?というのがモチベーションです。笑

no-img2
sakuraba

わざわざ結果を見にいくのもめんどくさいしね〜〜

スポンサーリンク

Pythonでロト6の結果ゲットする

今回は「requests」と「BeautifulSoup」の2つのライブラリを利用します。

RequestsとはPythonの HTTP ライブラリ。

参考Requests: 人間のためのHTTP

Beautiful Soup はHTMLやXMLファイルからデータを取得するPythonのライブラリ。

参考BeautifulSoup

コードの紹介

では、さっそく紹介します。

まずはじめに、requestsでロト6の抽選結果のページを取ってきます。

1
requests.get('http://www.mizuhobank.co.jp/takarakuji/loto/loto6/index.html')
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

次に、BeautifulSoupで抽選結果の番号をいい感じに抽出します。

1
bs4.BeautifulSoup(r.text, "html.parser")
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

最終的に以下のような形になります。

1
2
3
4
5
6
7
8
9
10
11
import requests
import bs4
import json
r = requests.get('http://www.mizuhobank.co.jp/takarakuji/loto/loto6/index.html')
s = bs4.BeautifulSoup(r.text, "html.parser")
t = s.find_all('table')
NUM = [int(i.text) for i in t[0].find_all('tr')[2].find_all('td')]
POST = str(NUM)
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

print文で出力するとこのような結果が返ってきます。

<< 実行結果 >>

>>> [11, 12, 24, 32, 38, 40]

これが最新のロト6の抽選結果の番号になります。

Slackに投稿する

結果の抽出は終わったのであとはSlackにポストするだけです。

Slackへの投稿方法については以下の記事に書いてあります。

PythonでSlackに任意のテキストを投稿する方法
こんにちは!!ようこそ、当ブログgcbgardenへ。管理人のsakurabaaa(@sakurabaaa_g)です。 本記事...

参考PythonでSlackに任意のテキストを投稿する方法

先ほど、抽選結果を「POST」に代入したので、Slackへの投稿プログラムに「POST」をいれます。

1
2
3
4
5
requests.post('URL', data = json.dumps({
'text': POST, #
'username': u'me', #
'icon_emoji': u':ghost:', #
}))
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

まとめ

Pythonで最新のロト6の抽選結果をとってきて、その値をSlackにポストするプログラムに突っ込んでみました。

最終形態。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
import requests
import bs4
import json
r = requests.get('http://www.mizuhobank.co.jp/takarakuji/loto/loto6/index.html')
s = bs4.BeautifulSoup(r.text, "html.parser")
t = s.find_all('table')
NUM = [int(i.text) for i in t[0].find_all('tr')[2].find_all('td')]
POST = str(NUM)
requests.post('URL', data = json.dumps({
'text': POST, #
'username': u'me', #
'icon_emoji': u':ghost:', #
}))
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

実際にこのコードを走らせると、見事にSlackに結果を投稿してくれます。

なんでもかんでも自動化しちゃった方が楽だね。

このプログラムはラズベリーパイでcronで走らせているので、毎週抽選結果を勝手に届けてくれています。

この記事を書いた人。
20代。とあるネットベンチャーでがんばる働き屋さん、ブロガー。
書きたいことを気ままに書いてます!
Python、プログラミング、米株、カメラ、野球観戦がすき。趣味は新宿散策。

スポンサーリンク

Share

Follow