PythonでExcelのファイルの読み書きをする方法をわかりやすく説明します。
Pythonを最初に勉強する際、基礎として、if文やfor文など文法を本では書かれていますが、初心者の方でも、実際にどのように使えるのかを紹介していきます。
*前提として、用意して欲しいもの
Pythonをインストールしてこと、エディタ(IDE)を用意してあることです。
最初にopenpyxlというライブラリーを使うのでコマンドラインで、
$pip install openpyxl
これで準備は整いました。
今回使うライブラリー
openpyxlです。
openpyxlは、Pythonでスクレイピングをするライブラリーで、web上のhtmlから情報を取ることができます。
実践
今回は都道府県・市区町村ランキングデータから、2015年の人口から2018の人口の増加が多かった順番になっていますが、
これを人口増加が少なかった県5つ並べて表示していきます。
urlはこちらです。https://uub.jp/rnk/p_k.html
このデータをコピーしてエクセルに貼ってください。
ファイル名は[include_pop.xslx]にしてください。
では、コードを書いていきます。
file=”include_pop.xslx”
book = xlrd.open_workbook(file)
sheet = book.active
data.append([
row[0].value,
row[2].value
])
del data[0] data = sorted(data, key=lambda x:x[1])
for i, a in enumerate(data):
if (i >= 5): break
print(i+1, a[0], int(a[1]))
一行ずつ解説します。
#openpyxlのライブラリーを読み込みます。
#変数fileにエクセルのファイル名を代入します。
#変数urlにhttp://www.mcdonalds.co.jp/menu/burger/を代入します。
#変数resにurlopen()関数で変数urlつまり”http://www.mcdonalds.co.jp/menu/burger/”を開きます。
#変数soupにBeautifulSoupを使ってresのhtmlを解析します。
#変数priceにsoup.select_oneメソッドを使い以下の場合.priceつまりclass=priceの要素を一つ取り出します。
#priceを出力します。
このように420円のデータを取ることができました。
コメントを残す