Category ‘制作日記’

ケータイの利用者動向

携帯用:生ログビューアー仕事で携帯のトップページをFlashにしたいという話があり(オレが作る訳じゃないが)、気になったので調べる事にした。
アナライザーを探したが無さそうだ、そもそも携帯電話のアクセスログは取りづらい。
GoodleAnalycsが非対応なのはもちろん、携帯でもアクセス数やキャリアや機種が分かる程度しか分からない。
運営者ならそれでもいいかもしれないが、開発者としてはそれでは不足している。
今、使われてる携帯でFlash Liteのバージョンは何にするのがいいのかはFlash Lite1.1という話になっているが、本来は微妙な話だ
サイトによってはユーザーが違うし、インターネット白書などで調べるという事も考えられるが、インターネット白書は過去一年の情報を纏めて発行するので最大2年のタイムラグが発生する。
普通の社会では2年ぐらい気にならないかもしれないが、WEB(特に携帯)の世界だと2年は長い。
そこで、生ログを調べる事にした。
以前もやった事があるが生ログからエディタやエクセルを駆使して目的のデータを抽出するのは結構な手間と時間がかかる。
一回だけならまだしも、何かの度に調べるには厳しいのでスクリプトで処理する事にした。
チカッパは生ログをGZの圧縮データで落とせる。
そこでGZの圧縮データをメモリ上で展開し、Bot(検索エンジン等)を除外し、更に携帯の呼称とキャリアとフルブラウザかのデータにし保存する。
保存したデータを読み込み、インプレスR&Dのケータイ端末プロファイルデータ(無償版)と組み合わせた配列をFlash製グラフ作成「amcharts」のクラスを使ってXMLを書き出したファイルをamchartsに読ませて円グラフにしてみた。

http://uda2.com/logviewer/index.php?view=47

データは2008年11月30日から2008年12月6日までの一週間のログを纏めてみた。
一番下のは「ケータイ端末プロファイルデータ(無償版)」に無かったので弾いた機種だけどY901i YH01はパソコンから「モバイル版Yahoo!カテゴリ」を見る為にYahoo!が偽装したユーザーエージェント。
なんだかんんだでコレを作るのにも丸一日かかってしまった。

人気のあるWEBショップ

深夜にMyReleaseのリニューアルをしました。
変更箇所に誰も気づかないかもしれないけど、今まで色んな所から情報を取ってきてamazonのAPIとすり合わせしてたんだけどCD・DVD・GAMEをamazonのAPIまかせにした、内部で持っている情報が増えたので今後の展開が色々できる様になった。
(コミックはamazonよりも早く情報をそろえたいので今まで通り色んな所から集めてます。)
以前、コミックのBLが判別できないので困ってたのを出版社でなんとかごまかしたんだけど、DVDにも微妙なのがあるのに気づいてしまい、仕方ないので特に酷いメーカーだけアダルトにした。
あと、CD・DVD・GAMEも商品詳細ページを用意することにし、本当に人気のあるWEBショップはどこか調べることにした。
ブックマークしてる人が多いって事は人気があるだろうとyahooで検索した時に出てくる「ブックマーク:?人が登録」ってやつで人気を調べることにした。
1位はamazon
2位は楽天
3位はビックカメラ
4位はHMV
5位は紀伊国屋
6位はソフマップ
7位はBK1
8位はJbook
9位はタワーレコード
10位はツタヤ
後はセブンアンドワイ・livedoorブックスe-honと続く
楽天とかlivedoorとか本屋自体にはリンクしてない所があるので正確なランキングではないけどそんなに外してないかと思う。
オレの感覚だと2位ぐらいかと思ってたセブンアンドワイが意外とユーザー少ないのがびっくりだ。みんなの書店とか面白そうなコンテンツがあるのに。
amazonと楽天は別格で全体的にサービス(送料や価格や使いやすさ)がいいから上位というよりは実店舗で有名な安心感のあるショップがWEBでも人気があるという感じの結果になった。
あまりに現状と違いすぎて在庫を調べるスクリプトの改訂が大変なので、選ぶ事をやめて可能な限り載せる事にした。

PSPが真っ白に

psp_download.jpg家にあるPSPはあまり月に1回ぐらいしか電源を入れないので毎回日付を聞かれる。
PSPをどうにか有効に使おうとテレビ番組をMediaCoderでPSP用に変換して見たりした。キレイに見れるんだけど変換に時間がかかるので実用的では無い。(DLNAクライアントが搭載されたらエンコードしなくてもいいのに・・・)
本題にはいるがPSPにはブラウザが内蔵されている。昔MyReleaseを見たときに真っ白になってたんだけど半年以上前にはちゃんと表示されてたので「気のせい」という事でスルーしてたんだけど先日見直してみるとまだ、真っ白になってる。
何が起きたのかとソースを削りながら調べてみたら、コミュニティに付けたルビ関連のCSSハックが原因という事が分かった。
「CSSハックはできるだけ使わない方がいい」と言われてるのが本当に問題が起こるとは・・・
javascriptでルビ関連の記述をPSPとパソコンで振り分けると解決した。
for 0.02%のPSPでMyReleaseを見てる人へ

RSS対応ってどうなの?2

いつの間にかRSS 1.0の表示がおかしくなった。
FireFoxで見たらタイトルだけになってしまう。
RSS 2.0とATOMの方は問題が無い。
2・3時間ほどRSSのクラスを弄って仕様に厳しくしていったたけど直らない。
よく考えたら、作ってから触ってないのに表示できなくなった、変わったのは月だった。
11月から12月になりまだASINが分からないデータが含まれていて、ASINが分からないデータはamazonで検索するようにしてあるんだけど、検索するときはURLが長くなるので文字数オーバーになった様だ。
検索せずにamazonにリンクするようにしたら直った。

iコンシェルはiCalendar

b19nature_animals_land068.jpg最新のdocomoの携帯にiコンシェルという機能が付いた。
「ひつじのしつじ」でおなじみのアレだ。
元々、パソコンや携帯でスケジュール管理をするのが苦手(書くほどの予定もない・・・)のなのでGoogle カレンダーとかも牛のリマインダーもスルーしてたんだけど、iコンシェルは楽しそう。
そこで、「MyRelease」のコミックの発売情報を載せてみるかな と作ろうiモードコンテンツ:スケジューラデータフォーマット | サービス・機能 | NTTドコモを調べてみたら
誤記発見、「CHARASET=SHIFT_JIS;ENCODING=QUOTED-PRINTABLE:」とか書いてる「CHARASET」でなく「CHARSET」ですよね?
ずずっと見ていくと「緯度・経度」とかもひっぱってこれるみたい。
集合場所までナビまでしてくれたりするんかな?
iコンシェルのを作る前にGoogleカレンダーの事もよく知らないので調べてみると
iCal(iCalender)とかいう書式らしい、元々はvCalenderとかいうvCard(電子名刺)の親戚みたいなものの様だ。
サイトによって書式にぶれがあるのが気になるがRSSと同じで読むソフトがなんとかしてくれるという事だろう。(サイトによってはそれぞれのカレンダー用に用意してる所もあった)
調べてる内にイベントソーシャルサイトeventcastを見つけた。Google Calendar、iCal、c2talk、カレンダぴ、auケータイとのやりとりができるらしい。
他のケータイにも対応してるみたいだけどよくわからない。
とりあえず、単品のイベントならYahooカレンダーにも登録できる事が分かった。
リマインダ ボタンの作成)
ヘッダを header(‘Content-Type: text/calendar; charset=utf-8’);
で拡張子は.icsだそうだ
ポチポチやってると日付に関する指定がやたら多く微妙な言い回しなので調べたが
iCalendarの仕様がよくわからん、調べたが結局よくわからん様だこれも受け取るソフトがなんとかしてくれると信じよう。
http://my-release.info/1/COMIC.ics
グーグルカレンダーに登録 Googleカレンダーに登録はこれでいけるみたい。
一回間違えたデータを登録すると登録し直してもすぐに反映されない。
頻繁にicsファイルを見ないようにしてるのかもしれない。
そんで本命のiコンシェルやけど Googleカレンダーよりは設定項目が少ないけど日本語はQUOTED-PRINTABLEとかいうのに変換しなきゃいけないらしく、「imap_8bit」か「quoted_printable_encode」を使うと出来るんみたいだけど。xreaではいけるけどチカッパはダメだった。
ネットで替わりの関数を探し2コ見つけたので試したけら1コはコンパクトだけど正しい答えが返って来なかったので長い方(Quoted-Printableのエンコード (ふえうさぎの記憶墓地))を拝借することにした。
ちなみにiコンシェルの場合は
ヘッダを header(‘Content-type: text/x-vcalendar; charset=Shift_JIS’);
で拡張子は.vcs
そんなこんなで丸一日かけて完成
http://my-release.info/1/COMIC.vcs
って、オレ最新のdocomo持ってないから確認できない・・・

RSS対応ってどうなの?

RSSにちょこっと対応しようかなと思ってみた。
きっかけはこの記事
ユニークなものからシンプルなものまで、RSSのアイコン集: Part 5
なんかイイ感じのアイコンが並んでるので使いたいなと思ってやってみた。
とはいえ、情報はあるので整形するだけでRSSは作れてしまうんだけど、あえてRSS 1.0とRSS 2.0とATOMに対応させようとライブラリを探した。
超簡単って事で「FeedWriter.php」ってのを使うことにした。
PHPでATOM、RSS1/2フォーマットのフィードが超簡単に吐き出せる「FeedWriter.php」
設置は1時間もかからず済んだが全然動かない。
色々、いじっててPHP5の関数(privateとか)って事に気づいた、チカッパはPHP4なので動かない。って事でPHP用4に改造、しかもソース見たら重複するノード名はitem以外使えない様になってる(XMLとしては片手落ちだけどRSSでは問題無いっぽい)それならややこしいことせずに連想配列を使ってクラスを1つに纏めて、文字コードを変更する機能とかなんやら付け加えて、完成したら丸一日かかってしまった。予定では2時間ほどで出来る予定やったのに・・・
□RSS 1.0:http://my-release.info/1/COMIC.rdf
□RSS 2.0:http://my-release.info/1/COMIC.rss
□ATOM:http://my-release.info/1/COMIC.xml
RSSの種類は拡張子を変えると切り替わる様にした。
正直そこまでして誰が喜ぶのか分からないが・・・
以前からRSS対応は視野にあったんだけどMyReleaseで扱ってる商品が「11月下旬」みたいなのがあって、どうしても月単位でないと情報が欠けてしまうので「RSSやメール配信に向いてない」と考え付けなかったんです。
そういう訳で使う人が殆どいないのでこっそり仕様で設置する予定です。

ブログパーツでアクセス数アップ

先日公開したブログパーツを各所に紹介の依頼をしました。
掲載してくれたとこや、掲載してくれなかったとこや、前回紹介してくれたのに今回紹介してくれなかった所がありますが6割ぐらいのサイトが紹介してくれました。
おかげ様で10%ぐらいアクセス数がアップしました。
現在、下記のサイトで紹介されてます。(逆リンクの多かった順)
Seesaa ブログ: ブログパーツ
ブログパーツをさがせ
ブログパーツ.com
ウィジェッタウン
ブログパーツ助っ人
HANATSUKI
ブログパーツのBloglue
ブログわさび
と掲載するサイトを探して登録って作業をしてると
amazonのブログパーツ「お買い得ウィジェット」ってのを見つけて、特価部に貼ってみた。
といっても一週間前に貼ったんだけど、その時は商品が表示されなかったりしてたけど、最近安定してきたみたいです。

メールが迷惑メール扱いされるので対策してみた

どうも、最近hotmailもyahooメールもスパム扱いされる事が分かったので対応する事にした
調べてみると「登録」とかの文字が入ってるとダメとか送信元のドメインとメアドのドメインが一致しないとダメとかあったがとりあえずメールソフトから送れるのでドメインの問題かと思うがチカッパは設定項目が少ないので無理そうなのでソケット使って直接送るしかなにのか・・・と思ってたら
PEARだとドメインとか設定できる場所があるらしい事が判明。
久しぶりにPEARを使うことにしてみた。(一回やってみただけなので例のごとくすっかり忘れてる)
http://www.karate-style.jp/2007/06/11/pear/
でMail系のが入ってるか調べてみた。
・net_useragent_detect
・net_url
・xml_rpc
・sqlite
・archive_tar
・xml_parser
・net_socket
・db
・http_request
・net_smtp
・pear
・http
・mail
・console_getopt
入ってなさそうな感じだ・・・。
なんでもPEARを簡単にインストールできるものがあるらしい。
http://www.karate-style.jp/2007/06/13/pear-2/
を参考にhttp://go-pear.org/にアクセス。
繋がらない・・・
http://pear.php.net/go-pear
に引っ越し(?)してるらしい。
指示通りインストールしたら、赤い文字でパスワードがどうこうでセキュリティがみたいな
英文が現れたので調べるとbasic認証とかしないといけないらしいので適当に認証付けたら警告文は消えた。
あとは、htaccessでパスを指定っと、やりながらこの記事を書いて気づいたんですが「Mail」は既にインストールされてますね。
・・・意味がない。とりあえず、いつか使うかもしれないので残しておいてhtaccessのパス指定だけ戻して使わない様にしときます。
ということで試してみた所、
噂通り、PEARのMailのsmtpだと迷惑メールになりませんでした。
結果、何が原因かは分からなかったけど、普通のメールを送る様な感じの設定だと送れるみたい。
ちなみに削除方法も見つけたのでメモっときます。
http://tatsuyakun.jp/2008/07/pear.html
実行演算子 ってのでPHPでtelnetとかで使うコマンドがバッククォート (“)で括るだけで使える見たいです。

Google検索で突然圏外に!の解決

結局、何が原因だったのか分からないけど、ランキングが元にもどりました。
各所で言われてる様に約2週間で解決しました。
なんやら直してしまったので正確なことは言えないけど何もしなくても解決したかもしれません。
h1よりh2の方が重要」とか「1ページに100箇所以上リンクしない方がいい」とか勉強になった。(という事でなっとくする)

Flashの文字が消える

本業がヒマなんだけど、運営サイトが多いので今日もカチャカチャとキーボードを叩いてる。
色々とやることがあって、優先順位が微妙であれこれと数個の作業をちょっとずつやってるんですがMyReleaseのブログパーツのFlash版でつまずいた。
なんかFlashの文字が消えてる事に気づいて、読み込みしくったかなと思ってtraceかけても問題なし、しゃーないんでヘルプ見てみると、最近のFlashは「ダイナミックテキスト」とかの「変数」は使っちゃいけないらしい、「じゃあ置いておくなよ」と言いたくなるが大人な対応で「インスタンス名.text」にしたけどダメ。全然原因がつかめないし、ちょこちょこ作ってたので、そもそもどの段階から消えたのかも分からん。
仕方なく、スクロールの仕組みの方を進める事にした、これも全くどうやって作ったのか覚えてないので自分の作ったやつをおさらいしながら作っていってたらハタと気づいた、ボタン全体をマスクしてたんだった。
Flashはビットマップフォントにマスクとか変形したら文字が消えるんです。ダイナミックテキストは基本的にビットマップフォントなんで消えてしまうんです。以前にもこれで悩んだはずなのに全くきづかんかった・・・
Flash版は角丸にするんで背景を透過さしたかったんでマスクしたのに、別の方法考えなあかん。それにしてもFlashのブログパーツはめんどい。Flash作って、データをFlashに渡すPHP作って、Flashを読み込むJavaScript作って、ブログパーツを生成するPHP作ってと1コのブログパーツ作んのに結構な時間がかかる。
こんなん作って必要とされてるんやろか。