Page 1
普通のPythonistaが
PHPやってみた。hideo54
Page 2
自己紹介(2回目)
• Twitter: @hideo54 • 今日で15歳になりました(wishlist.hideo54.com)
• 好きなもの • Apple, Twitter, Python
Page 6
普段Pythonで
何やってるかというと
Page 7
tweepyでTwitterbotを
作ったりしています
Page 9
自分だけでなくみんなが
使えたら楽しいのになあ
Page 10
( ˘⊖˘) .oO(Web…?)
Page 11
( ˘⊖˘) .oO(やってみるか…)
Page 12
やろうと思ったこと
• Twitterbotを作れるWebサービス • 既にある気がするけど(゚ε゚)キニシナイ!!
Page 13
やろうと思ったこと
• ユーザーはいわゆる“Sign in with Twitter”でログインする
• お手製のログインシステムを作る必要がない
• MySQLにAccessTokenを保存するだけ
Page 14
初めてのPHPの練習には
最適じゃなイカ?
Page 16
図解
ConsumerKey&Secretから RedirectURL作る
TwitterAccountで ログインしてもらう
ページ内の ボタン
twitteroauth.php OAuth.php
index.php
Library
Page 17
図解
返されたTokenから AccessTokenゲット
→SESSION, DBに保存
Tokenを 返してくれる
twitteroauth.php OAuth.php
SESSIONに AccessTokenが あるのを確認
index.php
Library
Page 18
図解
ページ内の ボタン
index.php
DBにbot内容を保存
MySQL Database
Page 19
図解
MySQL-Connector Tweepy
Library
MySQL Database
bot内容を取得し 定時実行ファイルを出力
atコマンドで実行時刻を指定
execute.py
Page 22
感想
• PHP思ったより簡単(書いてたら慣れる) • ずっとPythonマンだったのでブラウザで自分の作ったものが動くのは嬉しい
• Webで公開するのはセキュリティ心配
Page 23
感想
• サーバー設定がつらかった
• 「MySQLに接続できない…」で3日
Page 24
感想
• Pythonでのbot処理の方法考えるのもつらかった
• 結局、DBからデータを引いてくる→atコマンドでそれぞれのbot用の実行プログラムを作り定時実行する、という形に
• よりよい方法ありそう…
Page 25
今後のタスク
• セキュリティざるい • 実はまだSQLインジェクション対策してない
• デザインがクソ • CSS書いてない
Page 26
まだ公開できない OSSとはなんだったのか
Page 28
今回成長したこと
• 初めてPHPを触った • 初めてMySQLを触った • 実装はわりといけた • できることが広がったので頑張りたい(小並感)
Page 29
頑張りましたのん (のんのんびより7巻OAD付き入手できなかったマン)
Page 30
ただ…
• 面白くない • 新規性がない • ダメ
Page 33
展示• CharacterTrends • 今まで見たアニメ(animetick.net/users/
hideo54)に出てきたキャラに関するツイートを拾い、自然言語処理を通してポジティブ度を算出
• つぶやかれている頻度とともに可視化
Page 36
展示• キャラをクリックすると+1できる • 投票者の中での人気度とTwitterでのポジティブ度とをグラフにとって相関関係を見たりもできる
• データがまだ少なめなのでよければご協力ください
Page 37
展示
• Developer • Python: @hideo54 • JavaScript: @hakatashi(OB) • 実は@hakatashiのほうが頑張ってる
Page 38
感想
• 誰得ではあるが新規性は生えていて僕にしてはアイデアすごいと思った
• @hakatashiが「単位いいいいいいい」って言ってて罪悪感
• 生まれ変わったらWebマンになりたい
Page 40
( ˘⊖˘) .oO(今から勉強して
みるのもありかな…)
Page 41
公開できない OSSとはなんだったのか
Page 43
Thank you for listening!
ご清聴ありがとうございました