以前書いた記事2つのつづきで Twitter Bot を作った話。
Xrea + CakePHP + MeCab で日本語形態素解析
CakePHP + OAuth + Twitter API で Bot を作る
上記のことがクリアできれば、あとは自分の好みの Bot を作るだけ。という状態。
今回作ったのが、ご当地ロボ (gotohchi) on Twitter。
以前書いた記事2つのつづきで Twitter Bot を作った話。
Xrea + CakePHP + MeCab で日本語形態素解析
CakePHP + OAuth + Twitter API で Bot を作る
上記のことがクリアできれば、あとは自分の好みの Bot を作るだけ。という状態。
今回作ったのが、ご当地ロボ (gotohchi) on Twitter。
前回作った Xrea + CakePHP + MeCab で日本語形態素解析 を組み合わせてマルコフ連鎖でカオスな文章をつぶやく予定だが、今回は OAuth で Twitter API とやり取りして自分のアカウントに「つぶやけ」とツイートする Bot を作るまで。
PHP で日本語形態素解析が使いたい。
Yahoo!デベロッパーネットワーク – テキスト解析 – 日本語形態素解析 は手軽に使えそうだけど登録しないと使えないというのが好みじゃない。
MeCab と chasen は、Xrea で使えた実績があるらしいことがわかって、そっちを使うことにする。
MeCab を使うだけなら、CakePHP を使う必要はないが、元文章は RSSなどの XML または、XHTML から自動的に取得 → マルコフ連鎖でカオスな文章を生成 → つぶやく。という圧縮新聞みたいなのを作ってみたいと思った。
XML または XHTML の取得、蓄積は CakePHP で過去に作ったことがあるので、それを流用することにするのが CakePHP を使う理由。
CakePHP でファイルアップロードの方法を調べていたら、Media Plugin for CakePHP というのが評判よさげだったので使うことにした。
サンプルとしてつくってみたのが以下。
シームレステクスチャ
ちょっと前にやったのでかなり忘れてきているけど、少しでも覚えているうちにやったことメモ。
基本的には下記の記事にやりたい事はほとんど書かれている。
多少違うところも、そこから貼られているURLを追いかければほぼ解決。
mediaプラグインまとめ – 趣味の延長線
連休中に、いろいろと CakePHP の Plugin 的なパーツを作っていて、なかには管理画面が必要なものもあったりして、さらに、その管理画面から外部リンクをはりたいものがあったりもすると、ちょっと悩む。
管理画面から直接外部リンクをはると、管理画面のURLがリファラとして渡されてしまう。
管理画面のURLは、第三者にはあまり知られたくない。
自作でリンククッションを作るのが手っ取り早い。
リンククッションだからという理由でドメインごとアクセスブロックされるのも困る。
リファラは空にしておく必要がある。
サーバは、VALUE DOMAIN の XREA と CORESERVER を主に使ってます。
XREA や CORESERVER で Webアプリケーションとして公開する場合は、public_html 配下じゃないとアクセスできない。だからといって、public_html 配下にフレームワークの公開しなくてもいいものまで置くのはセキュアではない。URLも美しくない。
そのため、アプリケーションとしてWebからアクセスする部分だけを切り離して public_html 配下に置き、パスの部分を書き換えていた。
それでも、それなりに便利ではあるけど、できるだけ無駄なことはしたくないし汎用性が低くなる。
また、XREA や CORESERVER でサブドメインや複数のドメインを使用する場合は、「public_html/ドメイン名」でフォルダをアップロードしなくてはいけない。このため、public_html 直下をちゃんと整理できない人はごちゃごちゃしてイライラする。
公開する部分とその他の部分を分けているので、開発やメンテナンスをする時にあっち行ったりこっち行ったりで面倒だったりする。
シンボリックリンクがその辺を一気に解消した。
オープンソースとしてSNSを開発しているUsagi Projectとコラボレーションをさせてもらうことになりました。
この度、PHPフレームワークの「Maple Project (http://kunit.jp/maple/)」と、PHPライセンスでSNSエンジンを開発している「Usagi Project (http://usagi.mynets.jp/)」が、プロジェクトとしてコラボレーションし、今後の開発を共同で行うことを決定しました。
Usagi Project:国産のOSSフレームワークMaple Projectと、SNSエンジン開発OSSのUsagi Projectがコラボレーション!!
しばらく Ethna を使ってWebアプリを作ってみたものの、もうひとつしっくりこなかったというか、Ethna のよさを十分に活かせていないような気がして、他のフレームワークを使ってみようかと調べてみた結果、CakePHP を試してみようと思って、いろいろと CakePHP の情報を集めているところのでこのニュースを知りました。
zontheworld
うまい焼肉が喰いたい。
HTML convert time: 0.709 sec. ( Login )