PythonでJリーグの順位表をダウンロードする

不純な動機で始まったPython学習ですが、ようやく一つ目的を達することができました。

とりあえず、目標としているデータを自動で入手する方法ができました。

JリーグデータサイトのJ1順位表

上のリンクから表のデータをCSVへ落とすやり方が出来ました。

しかし、Pythonはコードが短くて目的を達することが出来るので凄いですね。

まだ、初心者なので、色んなサイトを参考にさせてもらいながら、まだまだ先が長いですが、ちょっとづつ頑張って見ましょう。


import csv
from urllib.request import urlopen
from bs4 import BeautifulSoup
 
# webアドレスの指定
html = urlopen("https://data.j-league.or.jp/SFRT08/search?competitionYearEx=2021&competitionIdEx=1&selectedCompetitionName=%E6%98%8E%E6%B2%BB%E5%AE%89%E7%94%B0%E7%94%9F%E5%91%BD%EF%BC%AA%EF%BC%91%E3%83%AA%E3%83%BC%E3%82%B0&selectedCompetitionYear=2021%E5%B9%B4&competitionYear=2021&competitionId=1")
bsObj = BeautifulSoup(html, "html.parser")
 
# テーブルを指定
table = bsObj.findAll("table", {"class": "table-base00 search-table"})[0]
rows = table.findAll("tr")
 
csvFile = open("ranking.csv", 'wt', newline='', encoding='utf_8_sig')
writer = csv.writer(csvFile)
 
try:
    for row in rows:
        csvRow = []
        for cell in row.findAll(['td', 'th']):
            csvRow.append(cell.get_text())
        writer.writerow(csvRow)
finally:
    csvFile.close()

簡単にスコーンとできますね。ちょっと感激。

こりゃ、みんなPythonを使うわけですね。

自分の場合は、各種ダウンロードしたデータは、データベースに取り込み、見える化(グラフ化)します。

そうしてTOTOを購入するときに役立てる訳ですね。

偉そうに言ってますが、Python自体はダウンロードくらいしか今の所は使わないのですがね。ww

今まではデータをコピペしてたので、楽チン度合が半端ないです。

何せコピペが面倒で嫌になったと、なかなか1等が当たらないので嫌になったのですよね。

さぁ、TOTOくじ(サッカーくじ)を本気で頑張って見ましょうかねぇ。

今年中にはできるだろうから来年からは、ちょっと頑張ってみましょう。

Ver2で既に8割近い感じで当てていたので、まぁ、なんとかなるかなぁ。

8割は4等があるなら毎回当ててた感じです。4等は無いのですけど。。。

資金力が無いので、一回に買える金額が3~6千円位ですし、miniは基本やらないのですが、自分的にはまずまずいい感じではないかと思います。

追記 2021/06/27

ようやく、各種データのダウンロードができて、それをデータベースに反映させることが出来るようになりました。

ボタン一発とは行かず、今の所、Pythonで一回、DBで一回ボタン押す感じですね。

それでも、過去に作成したものに比べれば、遥かに楽チンです。

今の所、お見せする機会はなかなかないでしょうけど、完成した暁には、予想と結果情報を載せていけるといいですね。

データだけでどこまで近寄れるか、やって見ましょう。

プログラムの方は、あとは解析とデータ表示、そして購入データの保存と結果の検討ですかね。

まぁ、のんびり作って行きましょう。

この所、個人的なことで色々とあって、身が入らないことが多かったので、ここから頑張って行きたいと思います。