人力検索はてな
モバイル版を表示しています。PC版はこちら
i-mobile

以下の様ないくつかのサイトを纏めて検索するサイトの作り方(PHP実装のロジック方針)を教えてください。

http://findvid.net
http://kakakuh.com
http://wav.tv ※アダルト系なので未成年・女性の方はご注意ください。

現在大学生です。学科とは関係なのですが、プログラミングに興味があり、ORACLE SILVERを取得しました。今度はアプリケーションやサイトを作りたくいろいろ参考になるサイトを見ておりましたが、上記のようなサイトの作り方が分からず困っています。

私が考えたやり方ですと
?それぞれのサイトに入って検索をする
?その検索結果のhtmlから必要な情報(動画のID等をぬく)
?抜いた情報を元に表示する

だと思ったのですが、それだと複数のページにまたがる結果を取得する際の挙動が分かりません。
(上記のサイトで検索結果2ページ目以降を表示する際には、再度対象の検索サイトに検索をかけに行く動きになっているのでしょうか?検索ヒットの総数も全体の件数を計算したうえで表示しているように見えます。)

かといってyoutube等のDBに直接クエリは投げられませんし、、、
一体どうやっているのか検討がつく方いらっしゃいましたら勉強の為にご教示下さい。

●質問者: shudoyui
●カテゴリ:コンピュータ ウェブ制作
○ 状態 :終了
└ 回答数 : 1/1件

▽最新の回答へ

1 ● ヨネちゃん

複数のサイトの検索結果をどうソートするかにもよるのですが、
例えばYouTubeの場合は再生回数の多い順にソートできるので、
「magic」の場合は、
https://www.youtube.com/results?search_sort=video_view_count&search_query=magic
となり、20件の検索結果が返されます。
以降のデータは、
https://www.youtube.com/results?search_sort=video_view_count&search_query=magic&page=2
というように「&page=2」や「&page=3」を付加すれば取得できます。
「&page=0」と「&page=1」は同じ結果で最初の20件が表示される仕組みです。

例えば3つのサイトを検索するとして、1ページ目が全て20件であった場合、
その60件のデータを全て集めて再生回数の多い順にソートします。
1ページに表示しようとする件数が20件であった場合はここまででOKです。

2ページ目以降が問題で、21件目から39件目までのソート結果に、
特定のサイトの20件目が表示されてしまっている場合、
その特定のサイトの21件目以降を取得し、追加してソートし直します。
そしてソート結果の21件目から40件目を表示します。

このように、足りなくなった可能性があればアクセスするという方法があります。


shudoyuiさんのコメント
回答ありがとうございます。 やはり二ページ目以降の情報は「&page=2」などで都度取りに行くしかないですよね・・・ あとはデータの加工の仕方等でカバーしてるんでしょうかね。。

ヨネちゃんさんのコメント
既存の検索サイトに大きな負荷をかけてサーバーをダウンさせてしまうといけないので、なるべく相手側の負荷を軽減させることが重要です。 負荷をかけ続けるとアクセス制限の対象になったりしますから。

shudoyuiさんのコメント
なるほどぉ・・・ 都度更新だとしても、既存の検索サイト(youtube)などのアクセス解析に引っかからないような仕組みにしないといけないということですね。 普通に検索をかけにいくと既存の検索サイトにどこから経由してきたか分かってしまい。 過度に同じサイト経由でアクセスがあると制限の対象になる可能性があるということですよね? どうしてるんでしょうか?また学びの種が出来てしましました笑

ヨネちゃんさんのコメント
アクセスを解析されれば必ず引っかかりますが、 相手のサーバーにダメージを与えないアクセスであれば、問題視はされないはずです。 悪い例を挙げると、100ページ分まで一気にゲットしてからソートするなどすれば、相手のサーバーやネットワークに多大な負荷をかけることになります。 インターネットは皆の共有財産ですので、共存することも重要な課題であると私は思っています。

shudoyuiさんのコメント
ダミーのサイト等を経由してアクセスかけてるのかと思ってました・・・ 仕組みに関しては大体理解出来ました。 実際に同じ様なサイトを作るかは分かりませんが、また何かありましたら宜しくお願い致します。勉強になりました!ありがとうございました。

ヨネちゃんさんのコメント
ダミーのサイトを経由しても解析されてしまえば同じことで、そのダミーのサイトからのアクセスを次々と制限されるでしょう。 もちろん刑事罰に問われることも今のところはないはずですが、 デジタルの世界なので隠すことは出来ません。 相手に悪意があろうと無かろうと、己のサイトを守ることも仕事のうちなのです。 またお会いできると楽しいですね。
関連質問

●質問をもっと探す●



0.人力検索はてなトップ
8.このページを友達に紹介
9.このページの先頭へ
対応機種一覧
お問い合わせ
ヘルプ/お知らせ
ログイン
無料ユーザー登録
はてなトップ