Webスクレイピングをしよう
by
SIGMA1425
Link
Embed
Share
Beginning
This slide
Copy link URL
Copy link URL
Copy iframe embed code
Copy iframe embed code
Copy javascript embed code
Copy javascript embed code
Share
Tweet
Share
Tweet
Slide 1
Slide 1 text
Webスクレイピングをしよう 授業変更情報BOTの作成
Slide 2
Slide 2 text
自己紹介 ¡ SIGMA(@SIGMA_tkn) ¡ 苫小牧高専 情報系3年 ¡ ロボットテクノロジー部(いわゆるロボコン部) ¡ Pythonで画像解析 ¡ 1年生にC言語の講習 ¡ 初めてのLT(がんばります)
Slide 3
Slide 3 text
初めてなので…
Slide 4
Slide 4 text
¡Webスクレイピングとは?
Slide 5
Slide 5 text
Webスクレイピングを一言で ¡ サイトから情報を抜き出す処理
Slide 6
Slide 6 text
スクレイピングの実用例 ¡ 天気予報のサイトからその日の天気を取り出す ¡ JRのサイトから運行情報を取り出す ¡ ニュースサイトからニュースを取り出す ¡ etc…
Slide 7
Slide 7 text
注意点 ¡ サイトによってはスクレイピングを禁止しているの もある ¡ 代表的なものとしてはTwitter
Slide 8
Slide 8 text
No content
Slide 9
Slide 9 text
スクレイピングを利用して… ¡ 苫小牧高専のHPから授業変更を抜き出してみた
Slide 10
Slide 10 text
きっかけ ¡ ある日、たまたま授業変更を見忘れた
Slide 11
Slide 11 text
きっかけ 僕「まぁどうせ授業変更なんてないでしょ〜(フラグ)」
Slide 12
Slide 12 text
フラグ回収
Slide 13
Slide 13 text
No content
Slide 14
Slide 14 text
使うライブラリ(Pythonを用いる) ¡ Requests →Webサイトの情報を取得する ¡ BeautifulSoup →Webサイトを解析する
Slide 15
Slide 15 text
No content
Slide 16
Slide 16 text
基本的には… ¡ requests.getにURLを渡し、BeautifulSoupでパース処理 ¡ あとはテキスト属性のみ取り出して必要な情報のみ抜き 出したり、整形するなど
Slide 17
Slide 17 text
No content
Slide 18
Slide 18 text
苫小牧高専HPの授業変更情報(自分のクラス)の データを取得する ↓ パースする ↓ タグのみ抜き出す ↓ 「科目名」というキーワードがあれば授業変更を探索、 テキスト属性のみ抜き出す ↓ 出力
Slide 19
Slide 19 text
実行結果
Slide 20
Slide 20 text
ラズパイのcrontabを用いて毎日、定時に実行 授業変更は毎日見たいので…
Slide 21
Slide 21 text
さらにクラスの人たちにも共有するために… 実行結果をクラスのSlackに出力
Slide 22
Slide 22 text
No content
Slide 23
Slide 23 text
まとめ ¡ スクレイピングは簡単にできる ¡ 毎日、サイトを訪れる手間が省ける ¡ 他の人たちも見るような情報はSlackなどに流すと喜ばれ る ¡ スクレイピングは素晴らしい!
Slide 24
Slide 24 text
ありがとうございました!