カテゴリー ‘ Webサービス ’
Webサービスで便利!faviconをpng画像として取得出来るGoogleのAPI
こんにちは、@9ensanです。
Webサービスを作成している時に、別サイトのfaviconを表示させたいと思うことありませんか?
そんな時に、表示させたいドメインを渡すだけで、faviconをpng画像に変換して取得してくれるサービスがあります。
Readabilityという有名な「あとで読む系」のサービスでも利用されています。
それでは、利用方法について詳しく書いていきます。
「あとで読む」系のサービス「Readability」への登録方法(PC/Android/iPhone/iPad)
こんばんは、@9ensanです。
「あとで読む」系のサービス「Readability」の登録までの方法についてです。
- PCの場合
- Androidの場合
- iPhoneの場合
- iPadの場合
Google AnalyticsとAdsenseをリンクする方法
こんにちは、最近寒くなってきて風邪気味の@9ensanです。
Google AnalyticsとAdsenseをリンクさせた時に2日間ぐらい悩んで解決したのでその解説
Google AnalayticsでAdsenseのリンクをクリックしても、下記のように
「このレポートを使用するには、このプロファイルに対して AdSense を有効にする必要があります。」
と表示されてリンクが表示されない場合があります。
これは、AnalyticsアカウントとAdsenseのリンク設定が正しく行われていない事が原因です。
まず、前提条件として重要なことですが
1つのAdsenseアカウントには1つのAnalyticsアカウントしかリンクさせる事はできません。
この前提条件は、2012年06月01日現在では変更できません。
Analayticsアカウントをたくさんつくっていて、1つのAdsenseアカウントを紐付けようとすると無理なのです。
まずは、ここを整理する事がから考えましょう。
私の失敗例
私の場合、下のようにドメイン毎にアカウントを作ってしまい、でもAdsenseは1つで運用していたのでこの時点でもう上記ルールと合わないので無理ということになります。
となると「プロパティ」を移動させたいと思うのですが、これが調べるとどうもできない見たいなので、過去の情報は諦めて新しくプロパティを作成します。
既にリンク済みのアカウントがあったら、そのアカウントに新しいプロパティを作成します。
既にリンク済みの場合のプロパティの追加手段を以下に記載します。
Adsenseにリンク済みのアカウントにプロパティを作成する。
1.まず、右上のアナリティクス設定を押下します。
2.「アカウントの管理」が表示されたら対象のアカウントを選択します。
3.選択したアカウントのページが表示されたら、「+新規プロパティ」をクリックします。
4.「プロパティ名」「ウェブサイトのURL」「業種」「タイムゾーン」を設定して「プロパティを作成」を押下します。
そうすると、すでにアカウントにAdsenseがリンクされていたので、このプロパティのAnalytics画面にもAdsense情報がリンクされます。
要するに重要なのは
「1つのAdsenseアカウントは、1つのAnalyticsアカウントにしかリンク出来ない」
これさえ、理解していれば迷う事は無いと思います。
ショートURLの実装についての考察
ちょっとフレームワークや、言語の勉強がてら巷に広がっているショートURLのサービスを作ってみようかと思っています。
まずは、その考察です。
ショートURLというと、
「googleの検索結果URLのように長いURL」を短くしてやろうぜ!
っていうサービスです。
有名どころでは、
- googleさんが作っている「Google Url Shortener」
- twitterの「t.co」
- 老舗で一番有名だと思う「bit.ly」
などがあります。
方法としては、URLと、短くしたURLをDBに紐付けて保存しておけばいいというのは分かります。
じゃあ、この短いURLを実現するにはどうしたらいいのでしょうか?
1.URLに対してmd5などのハッシュ関数で求められた値を使用する。
これでもいいのですが、
- ハッシュ関数のハッシュ値も以外と長い
- シノニムが発生する可能性があるのでどうする?
という問題があります。
なので簡単ではありますがちょっと避けたいと思います。
2.英数字の中からランダムで、指定桁数の文字列を生成してURLを作成
これも簡単でいいですが、
- 重複チェックが必要
- 登録件数が多くなると重複が発生する可能性が増えるのでどうにかしたい。
サービスの最初はいいかもと思うのですが、登録件数が増えるにつれて6桁などにすると重複が増える
じゃあ7桁に増やすかということなのですが、このタイミングの判断が難しいのでどうしよう。
問題ですね。
じゃあこの解決方法はないのか?
3.ショートURLの候補となるURLを先にDBに登録しておいてリクエスト毎に1つずつ振り出していく
この方法が一番ベストではないかと思います。
リクエストがきたタイミングでの、
- 重複チェックも必要なし
- 桁数を変更するタイミングも6桁を使いっきったら7桁のように処理すればいい
おお中々便利じゃないですかと思います。
じゃあ、問題点はないのか?
最初に登録するデータ量はどうなんだろうか?
英語小文字(26) + 英語大文字(26) + 数字(10) ^ 6桁 = 95428956661682176000000
となりました。???何バイトだ?・・・とてつもない量ではないか・・・非現実的w
結論
方法としては、3番目の方式を取りたいと思っています。
データ量の解決策は、最初から全てのデータを登録する必要ないだろうと言う事で必要になったら振り出す元のデータを増やしていく方式でいいのではないかなと考えています。
でも単純な文字列でもデータ量が貯まると、意外とデータ量っておおいんですね。。。
と言う事で考察終わり。