私が構築している webapp のために何かをしようとしています:
- ユーザーはあいまいな製品タイトルを入力します。例:
Bob Dylan Blonde On Blonde
- アプリは、その文字列に一致する製品のリストを関連性で並べ替えて表示します。
Amazon ECS API を使用してこれを実行しようとしました。それが私をAmazonに縛り付けるだろうと私は理解していますが、今のところ、私はそれで大丈夫です.
ECS の問題は、ユーザーが検索したときに、製品のバンドが何かわからず、関連性や人気ではなく、非常に奇妙な順序で結果が返されるという制限があるように見えることです。同じこと)。たとえば、ECS で "Bob Dylan" を検索すると、最初の 2 つのアイテムとしてポスターが返され、次にビデオ、ランダムな CD、さらにビデオとポスターが返されます。
私が本当に欲しいのは、Amazonの本当の検索のようなものです。アマゾンに行って「ボブ・ディラン」で解雇した場合、大量の CD が戻ってきます (当然のことです)。これで、技術的には Amazon や Google ショッピングをスクレイピングできると確信していますが、それはいくつかの利用規約に違反していると確信しています。
だから私の質問:
Amazon の ECS を、ユーザー向けの Web サイトと同じ方法で検索して並べ替えることができますか?
同様の (完全に舞台裏で - ページ上の JS ではなく) 方法で代わりに使用できる Google Product Search/Shopping API はありますか?
賞金稼ぎのために編集します。
現時点では、私はこれをやっています:
Google の AJAX 検索 (これは、SOAP バージョンのようにバックエンドで機能するようですが、許可されているかどうかはわかりません) を検索文字列
site:amazon.co.uk
とinurl:/dp/
一緒にクエリすると、製品のリストが返されます。良識ある人気順。製品ごとに、Google が指定した URL から製品コードを抽出し、製品のタイトル、価格、リンクなどについて Amazon ECS にクエリを実行しています。
したがって、1 回の検索で 5 つの結果が得られる場合、6 つのリクエストを実行しています。それはかなり恐ろしいです。Amazon(または別のAPI)を介してこれを行う簡単な方法を誰かが見つけてくれたら、本当に感謝しています(525の評判に合わせて)