次のページのリンクを推測する上での困難メモ

HTMLから次のページのURLを推測するAPIを作る上での問題点メモ。

http://ido.nu/kuma/az-speculator/?u=http://jp.techcrunch.com/&callback=f&format=jsonp

old/new, next/prev問題

デザイン上の問題として昔から言われているもの。時系列 descendant で並べてると見ていく人的にはNextはolderだけど、レイアウトする時は左側?右側?みたいなやつ。

これはクライアントが必ず1ページ目(連続するなにかの端)から見ていると仮定できるのなら、既に読み込んだページを記録して参照することで解決できる。

階層構造問題

Next articleとNext pageが同時に存在するとどっちを優先すればいいかはコンピュータにはわからない。単語の意味を知らないから。単語の意味を統計的に与えることは理論的には可能だけど、サイトの構造がこういう階層を持っているかどうかを判別して、統計データとして役に立つだけの量を集めるのは困難。

これはパスを見て、上方向の変化にペナルティ、下方向の変化にインセンティブをつけるとわりと解決する。

ナビゲーション»問題

こういう
navigation
ナビゲーションで»がどのページへのリンクになっているかはサイトによって不定。googleのように2ページ目になっていることが大半だが、わりと13ページ目になっているサイトも多い。

これは解決が困難。ナビゲーション部分の»にペナルティをつける?

ページオリジン問題

ユーザが見はじめたページを1ページ目と仮定することで次のページのリンクを予測することは格段に容易になるが、全てのサイトが1ページ目から始まるわけでなく、古い画像掲示板等で0ページ目から始まるものがある。
絶対数は少なく、現代的なサイトでは見られないので無視していいかも。

誤判定問題

次のページを間違って推測していても間違っているかがわからない。訂正する方法が必要。

おまけ

WedataのデータをもとにXML::libXMLでテストするときの問題。


About this entry