2022.07.15 株式会社IBJ エンジニアゼミ LT会登壇資料
webアプリ https://yakult1000dreamsimulator.netlify.app/ github https://github.com/ROM1000-anpn/Yakult1000_dreamsimulator
View Slide
自己紹介加盟店本部 企画制作部フロントエンドエンジニア山岡 美晴● 最近の趣味○● 最近始めたこと○● 最近の好きなもの○
自己紹介加盟店本部 企画制作部フロントエンドエンジニア山岡 美晴● 最近の趣味○ 仕事終わりに映画館行く● 最近始めたこと○● 最近の好きなもの○
自己紹介加盟店本部 企画制作部フロントエンドエンジニア山岡 美晴● 最近の趣味○ 仕事終わりに映画館行く● 最近始めたこと○ 動画編集● 最近の好きなもの○
自己紹介加盟店本部 企画制作部フロントエンドエンジニア山岡 美晴● 最近の趣味○ 仕事終わりに映画館行く● 最近始めたこと○ 動画編集● 最近の好きなもの○ がうるぐら(ホロライブen)
ヤクルト1000はご存知ですか?
ヤクルト1000は悪夢を見せるらしい
こわい。。。。
悪夢を見るなら最初から内容を予想できれば心の準備もできてこわくないのでは?!
ヤクルト1000が見せる悪夢の内容予想webアプリ作ってみた
https://yakult1000dreamsimulator.netlify.app/
オープンソースにしているので、興味がある方は全リソースご覧くださいIssueやプルリクも大歓迎です!https://github.com/ROM1000-anpn/Yakult1000_dreamsimulator
1. 悪夢の内容を収集(スクレイピング)2. 大まかに主語、述語に分ける3. 主語、述語をグループ化4. それぞれのグループランダムに出力5. 悪夢予想ok、心の準備して寝る
0. 使用するサイト、使用するツールTwitter検索seleniumコロモー
0. 各種バージョン$ python3 -V3.7.13$ pip3 listpip 22.1.1selenium 3.141.0urllib3 1.26.10
0. 今回はChromeでスクレイピングChrome Driverを公式サイトからダウンロードhttps://chromedriver.chromium.org/downloads※現在使用している chromeのバージョンを確認した上で、対応バージョンの一致するzipファイルをダウンロードするzip解凍して実行する
Chrome Driverを公式サイトからダウンロードhttps://chromedriver.chromium.org/downloads※現在使用している chromeのバージョンを確認した上で、対応バージョンの一致するzipファイルをダウンロードするzip解凍して実行するok⇨0. 今回はChromeでスクレイピング
0. 事前準備Chrome Driverを使えるようにする
悪夢の内容を収集
1. 悪夢の内容を収集(コロモー)コロモーコロモーでのスクレイピング
1. 悪夢の内容を収集(コロモー)コロモーコロモーでのスクレイピング検証ツールで取得したい文言がなにで囲まれているか確認
1. 悪夢の内容を収集(コロモー)コロモーでのスクレイピング検証ツールで取得したい文言がなにで囲まれているか確認コロモー
1. 悪夢の内容を収集(コロモー)コロモー$ python3 [実行したいファイル名].py
1. 悪夢の内容を収集(Twitter)Twitter検索
1. 悪夢の内容を収集(Twitter)Twitter検索まず、Twitterのスクレイピング対策の本気度がヤバい
1. 悪夢の内容を収集(Twitter)Twitter検索まず、Twitterのスクレイピング対策の本気度がヤバい文字列がよくわからない区切りで分けられている…
1. 悪夢の内容を収集(Twitter)まず、Twitterのスクレイピング対策の本気度がヤバいしかしそれを包括している要素にdata属性があるという抜け道発見Twitter検索
1. 悪夢の内容を収集(Twitter)まず、Twitterのスクレイピング対策の本気度がヤバい実行してもエラー吐く どうやら取得したい要素がないらしいTwitter検索
1. 悪夢の内容を収集(Twitter)まず、Twitterのスクレイピング対策の本気度がヤバいなのでこうしてみるTwitter検索
1. 悪夢の内容を収集(Twitter)まず、Twitterのスクレイピング対策の本気度がヤバいなのでこうしてみるTwitter検索ページを開いたら5秒待つ5秒待っている間に取得したい要素がレンダリングされて取得できるはず…!time.sleep(5)
1. 悪夢の内容を収集(Twitter)Twitter検索$ python3 [実行したいファイル名].py
1. 悪夢の内容を収集(Twitter)取得できた、ザコめTwitter検索$ python3 [実行したいファイル名].py
1. 悪夢の内容を収集(Twitter)どうしてTwitterはスクレイピングしにくくしているのか?Twitter検索
1. 悪夢の内容を収集(Twitter)どうしてTwitterはスクレイピングしにくくしているのか?Twitter検索Twitterの利用規約にスクレイピング禁止とありました利用規約違反すると、アカウント凍結されるそうですしかしログインなしでスクレイピングすれば、アカウント特定できないのでは…そもそも商用利用するわけでないし、サーバーに負荷かけない範囲でスクレイピングするので、今回は特に気にしませんでした
大まかに主語、述語に分ける
2. 大まかに主語、述語に分けるこれを、
2. 大まかに主語、述語に分けるこれを、こう
主語、述語をグループ化
3. 主語、述語をグループ化
それぞれのグループをランダムに出力
4. それぞれのグループをランダムに出力
5. 悪夢の予想ok、心の準備して寝る
5. 心の準備してるから悪夢見てもこわくない
5.無敵
感想● スクレイピング使うと簡単にこのwebアプリ作れる● 初めて書いたpython、囲いがなくて不安になった● こわい夢シャッフルすると全然こわくなくなる
報告先日ヤクルト1000を頂いたので、寝る前に飲んで怯えて就寝した結果…
報告マジで何も見なかった
ご清聴ありがとうございました