今日のチェキ 2007-06-19
■日本人の12人に1人が使う巨大SNS「mixi」を運営する開発部の内側
■W3C、Ajaxの要であるXMLHttpRequestの最新ワーキングドラフトを公開
■WebDAV使い必見の最強WebDAVクライアント「CarotDAV」
■日本人の12人に1人が使う巨大SNS「mixi」を運営する開発部の内側
■W3C、Ajaxの要であるXMLHttpRequestの最新ワーキングドラフトを公開
■WebDAV使い必見の最強WebDAVクライアント「CarotDAV」
■「漫画能力検定」初めて実施 福岡など全国40会場で
坂本裕次郎センセとかに受けてもらいたいです
毎月変わる静的ページをチェックするためにconveyorでなんとかしようとsubscription作ってみました。
しっかりとしたドキュメントがみつからなかったので、ソース読みつつ。
・SubscriptionBaseを継承する
・タグのパースはSimpleTag(HttpPaserの名前につられるな)
・PEARでいうところのHTTP_Request相当はHttp(HTTP_ClientはBrowser?)
<?php
Rhaco::import("SubscriptionBase");
Rhaco::import("io.Cache");
Rhaco::import("network.http.Http");
Rhaco::import("tag.data.SimpleTag");
/**
* SampleIn
* @author cockok
*/
class SampleIn extends SubscriptionBase
{
function execute($variable){
$url = 'http://hoge.jp/';
$rss20 = new Rss20();
// キャッシュはなんとなく3時間
if (Cache::isExpiry($url, 3600 * 3)) {
if (!$html = Http::get($url)) {
return null;
}
Cache::set($url, $html);
} else {
$html = Cache::get($url);
}
$html = StringUtil::encoding($html);
$tag = new SimpleTag();
$tag->set($html, 'html');
$title = $tag->getIn('title');
if (count($title)) {
$feed_title = $title[0]->getValue();
} else {
$feed_title = 'title';
}
$feed_description = 'description';
$feed_url = 'http://hoge.jp/';
$feed_languege = 'ja';
$rss20->setChannel($feed_title, $feed_description, $feed_url, $feed_languege);
foreach ($tag->getIn('div') as $div) {
// いろいろ解析して登録
$rss20->setItem($title, $description, $url);
}
return $this->merge($variable, $rss20);
}
function description()
{
return "hoge.jpを取得する";
}
function config()
{
return null;
}
}
?>
キャッシュ、Last-Modifiedとれるならそれ比較しようかと思ったけど、今回のターゲットが吐いてなかった。
吐いてたとしても、どう保存しようか悩み所ですが。
Content-lengthで比較しようとしたら、Cache保存する際に文字コード変換されるらしく利用できず。
実際、HTTP通信よりもパースにコストがかかるので、パース後をserializeしてキャッシュしたほうがよさげ。
rhacoCacheはRSSフィード保存用な雰囲気だったのでどうしたもんか。
htmlspecialchars()や微妙なstrip_tags()を利用してませんので、XSS対策がされているRSSリーダで。
■Google AnalyticsでトラッキングするためのTips
■JAPAN国際コンテンツフェスティバルのロゴを佐藤可士和氏、テーマ曲は久石譲氏
■都知事選落選の外山容疑者逮捕 交通違反呼び出し拒否
外山恒一、また逮捕!?
■mod_expiresとmod_rewriteを使ってサイトの帯域節約と体感速度を向上させる方法
■ヤフーとグーグル、検索結果画面の視線の違いは~アイレップ調査
■Appleが「Safari 3」英語版ベータを公開、初のWindows版も
Safariは別エンジン積んでるのでwktk
■マイクロソフト、「Virtual Server 2005 R2 SP1」日本語版を公開
VM上でDSPって動かしていいん?
■本日弟が童貞を卒業いたしました。
感動巨編
■ニコニコ動画(γ)‐ニフニフ動画での「おっくせんまん」が大いに盛り下がっています
,j;;;;;j,. —一、 ` ―–‐、_ l;;;;;;
{;;;;;;ゝ T辷iフ i f’辷jァ !i;;;;; 後だしジャンケンなら負けない
ヾ;;;ハ ノ .::!lリ;;r゙ そんなふうに考えていた時期が
`Z;i 〈.,_..,. ノ;;;;;;;;> 俺にもありました
,;ぇハ、 、_,.ー-、_’,. ,f゙: Y;;f
~”戈ヽ `二´ r’´:::. `!
webdavを試験的に運用開始して、ログから書き込み削除の情報を取得したいなと考えていたところ「Apache Log Analyzer 2 Feed」なるものの存在を知ったので試してみた。
Apache Log Analyzer 2 Feed
以下、はまりどころとか。
Apacheログの改行コードはLFじゃないと動かないよ。
setLogFormatはシングルクォートで\はそのままね。(キモ)
$tool->setLogFormat('%h %l %u %t \"%r\" %>s %b');
FeedCreator.phpの180行目は変更してね。(直書きですかー)
define("TIME_ZONE","+09:00");
フィルタリングできる項目は以下のようなものがあよ。
- Remote-Host
- Remote-Logname
- Remote-User
- Time
- Request
- Final-Status
- Bytes-Sent
- Referer
- User-Agent
詳しく知りたいならApacheLogRegexp::rename_this_name()読むといいよ。
フィルタには正規表現が使えるよ。
$tool->addFilter('User-Agent', 'regexp:^DoCoMo');
webdavの追加削除RSSこんな風になりました。
<?php
require_once 'apachelog2feed/ApacheLogAnalyzer2Feed.php';
$al2f = new ApacheLogAnalyzer2Feed('ssl_access_log');
// フォーマットの設定
$al2f->setLogFormat('%h %l %u %t \"%r\" %>s %b');
// 表示件数設定
$al2f->setLogLimit(100);
// フィルタ
$al2f->addFilter('Request', 'regexp:^(PUT|DELETE) ');
// 表示
$al2f->run();
?>
Requestのファイル名をURLデコードしてあげるとわかりやすくてよさそう。
feedの詳細がprint_rまんまでしょぼいけど、そこはおいおい修正されることに期待。
そもそも、それPlaとかだったりしないんですかね。
軽く調べたけど見つからず。
conveyorに期待してます。
■リモート・ファイル・インクルード攻撃
IT Proの記事が酷すぎる件
■時間と場所でマッチングする一行コメントサービス「ヒマッチ」
■Apacheのログを解析してRSSに出来るPHP5用クラスライブラリ「Apache Log Analyzer 2 Feed」
■「Rubyの生産性は他言語の1.6~3倍」—楽天技術研究所 森正弥氏
■YouTube をケータイで閲覧できる「ぐるっぽ」がバージョンアップ
YouTubeのファイル着ムービーとかにできるけどさ、それやっちゃうとカスラックだまってないでしょ
■香川のニュースサイト?ってすごいね
喫茶店で「かまたまにする?ぶっかけにする?うどん食べないだと!?ひやかしは帰っとくれ!」らしい(香川県民談
■【中国】使用済み生理用ナプキンを原料として再利用し、レストランの紙ナプキンに…大腸菌や結核菌、肝炎ウイルスなど検出。つまようじからエイズウイルスも
youtubeのviewerがMacみたいになってる(なんてIFだか知らない)
■ニコニコブックマーク(仮)
利用規約に反するブックマーク投稿について
これはダメかもわからんね
■2次元しか愛せない。2枚目揃い。そして女性経験0。名づけて・・・「アキバ2.0」
こういう発想がDoCoMoにもあれば…
■VistaでWebDAV
無事利用できました
通りすがりってどんだけー
当たり障りなく返信した俺に謝れ
■「あり得ない」 TBS、非常識取材…「ハニカミ王子」石川遼に対し、盗聴工作。試合中に無断でヘリまで飛ばす
ニコニコ動画(γ)‐【TBSハニカミ王子盗聴】 『ピンポン!』 福澤朗 涙の謝罪