我正在尝试为我正在构建的 webapp 做一些事情:
- 用户输入一个模糊的产品标题,例如:
Bob Dylan Blonde On Blonde
- 该应用程序会显示与该字符串匹配的产品列表,并按相关性排序。
我已经尝试通过 Amazon ECS API 执行此操作。我意识到这会将我锁定在亚马逊,但现在,我可以接受。
ECS 的问题是当用户搜索时,我不知道产品类别是什么,并且似乎存在一个限制,即结果以非常奇怪的顺序返回,而不是相关性或受欢迎程度(如果它们不是一样)。例如,在 ECS 中搜索“Bob Dylan”会返回海报作为前两项,然后是视频,然后是随机 CD,然后是更多视频和海报。
我真正想要的是像亚马逊真正的搜索。如果你去亚马逊并在“鲍勃迪伦”中被解雇,你会得到一大堆 CD(你应该这样做)。现在我确信我在技术上能够抓取亚马逊或谷歌购物......但我确信这违反了某些服务条款。
所以我的问题:
您可以像在面向用户的网站上那样搜索和排序亚马逊的 ECS 吗?
是否有一个谷歌产品搜索/购物 API,我可以以类似的方式(完全在幕后——而不是页面上的 JS)来使用它?
为赏金寻求者编辑。
目前我正在这样做:
site:amazon.co.uk
与搜索字符串一起查询 Google 的 AJAX 搜索(这显然像他们的 SOAP 版本一样在后端工作,只是使用 AJAX,不确定我是否被允许),inurl:/dp/
这让我回到了一个产品列表合理的人气排序。对于每个产品,我从 Google 提供的 URL 中提取产品代码,并在 Amazon ECS 中查询产品名称、价格、链接等。
因此,对于一个有五个结果的搜索,我正在执行 6 个请求。这很可怕。如果有人可以通过亚马逊(或其他 API)找到我这样做的简化方法,我将非常感激(以 525 的声誉为佳)