My puppyのブログ

学んだ事や作っているプログラムなどについて書いています。

TED動画の一覧表を作りました。(English-Video.net)

非常に重いページですが、TED動画の一覧表を作ってみました。

All TED Talks List (Japanese)
http://www.english-video.net/l/ja

開くのに10秒以上かかる(もしかしたら20秒くらい)と思います(;´・ω・)

重い理由はTED動画のデータが入ったJSONファイルが約2000ほどありまして、それを毎回全部開いてるからです。

ひとつ前の記事に書いたDocumentDBに移行すれば早くなると思うのですが、もうちょっと先の話になりそうです。

英語の一覧表はこちらです。

All TED Talks List (English)
http://www.english-video.net/l/en

現在English-Video.netGoogleのカスタム検索を利用していますが、あまり検索精度が良くないんですね。

なのでこの一覧表を表示してからキーボードの「Ctrl + F」を押してTED動画を検索すると、すぐに探せると思います。

DocumentDBをPHPから動かす方法。

まずはMicrosoft AzureのDocumentDBの公式サイトです。

azure.microsoft.com

このDocumentDBをPHPで動かす時に、下の「documentdb-for-php」で試したらうまく動きましたのでメモっておきますね。

github.com

下記のコードは上のリンク先のサンプルからの引用です。

include 'documentdb-for-php.php';
$host = 'https://yourdocumentdbaccount.documents.azure.com'; // see (1) in the screenshots bellow
$master_key = 'yourmasterkey=='; // see (2) in the screenshots bellow
$db = 'yourdbname'; // see (3) in the screenshots bellow (optional)
$db_rid = 'thedbresourceid=='; // see (4) in the screenshots bellow
$coll = 'yourcollectionname'; // see (5) in the screenshots bellow (optional)
$coll_rid = 'yourcollectionresourceid='; // see (6) in the screenshots bellow
$query = "Select * from ..."; // This is your SQL or LINQ code
querycoll($host, $db_rid, $coll_rid,$query,$apptype,$useragent,$cachecontrol,$da_date,$api_version,$master,$token,$master_key,$da_date); //The function that does the magic. All variables are defined above and in the functions file

リンク先のサンプルの通りに上記の$hostや$master_key、$db、$db_ridなどを一通り設定すればすぐに動きました。

ちなみに以下の2つも試してみたのですが、エラーが出てうまく動きませんでした。

github.com

github.com

閲覧可能な動画の数を増やしました。(English-Video.net)

皆さまお疲れ様ですm(__)m
先ほどEnglish-Video.netで閲覧可能な動画の数を増やしました。

www.english-video.net

動画はIDで管理しています。
動画ページのURL内の末尾に数字がありますが、これがIDです。

例1: http://www.english-video.net/v/en/2426

上のURLの例ではID:2426ですね。
今まではID:2322まで閲覧可能だったのですが、それをID:2426まで増やしました。
ID:2322からID:2426までのIDの中には閲覧不可能な動画もありますので、約100動画です。

また、

例2: http://www.english-video.net/p/en/1

のような英語(en)のトップページから閲覧可能な動画数と、

例3: http://www.english-video.net/p/ja/1

のような日本語(ja)のトップページから閲覧可能な動画数は異なります。
これは字幕の翻訳数によって変化します。

各国語の字幕数の一覧はこちらで確認できます。

www.ted.com

動画の数が多くて、すべての表示を確認しようとしても確認漏れがあると思いますので、もしエラーなどをご発見された方はコメントお待ちしておりますm(__)m