如何在grails中进行web搜索
嗨,我是一个做学术项目的学生。我需要一些指导来完成我的项目 我的项目是基于grails框架的,该框架搜索3家不同书店的书籍,并给出所有3家书店的d价格。我需要搜索部分的帮助。 一旦用户输入所需书籍,如何指导对这些书店的搜索如何在grails中进行web搜索,grails,grails-plugin,Grails,Grails Plugin,嗨,我是一个做学术项目的学生。我需要一些指导来完成我的项目 我的项目是基于grails框架的,该框架搜索3家不同书店的书籍,并给出所有3家书店的d价格。我需要搜索部分的帮助。 一旦用户输入所需书籍,如何指导对这些书店的搜索 提前感谢您需要提供更多详细信息。通过搜索书店,你是指在数据库中搜索,还是像亚马逊等 我会找出这些在线书店是否有API,或者如果您有选择,请选择那些有API的在线书店,您可以使用它们进行搜索。例如,亚马逊有一个“产品广告API”,可用于搜索其目录(请参阅)。您通常必须注册为附属
提前感谢您需要提供更多详细信息。通过搜索书店,你是指在数据库中搜索,还是像亚马逊等 我会找出这些在线书店是否有API,或者如果您有选择,请选择那些有API的在线书店,您可以使用它们进行搜索。例如,亚马逊有一个“产品广告API”,可用于搜索其目录(请参阅)。您通常必须注册为附属机构才能访问此类内容 一旦有了几个可以通过API访问的在线书店,编写一些grails代码来调用它们并协调结果就相对容易了。API通常采用Web请求的形式,REST或SOAP(例如,请参阅)。Groovy的HTTPBuilder可以用来调用和使用书店的API web服务,如果您可以使用简单的REST,或者我相信有几个Grails插件(例如)。对于SOAP,请考虑GRAIUS插件。 您可以一个接一个地搜索API,或者如果您想更高级,可以尝试使用新的servlet 3.0异步特性(请参阅如何从Grails 2.0.x使用:-滚动到“servlet 3.0异步特性”)同时异步调用所有3个API。您可能需要通过DB对此进行协调,或者在结果页面上通过AJAX进行轮询以检查结果何时出现 因此,顺序如下:
还要注意的是,上面的方法是一种面向服务器的方法,用于完成这种事情。您可以完全在客户端(浏览器)上完成,使用AJAX调用Web服务,并通过JavaScript进行处理。但我是一名服务器管理员:)是的,它应该在亚马逊、flipkart、infibeam等书店进行搜索,并检索搜索到的书籍的价格。大多数书店都有明确定义的API。虽然我不确定flipkart是否有。但亚马逊应该这样做。谷歌就是这样。如果一个站点没有,那么您将不得不使用类似ApacheNutch的爬虫来获取和解析HTML内容,并从中提取数据。因为你知道你正在解析的html结构,所以应该很容易。如果你找到了所有你想要搜索的网站的API,那么你可以在用户按下你页面上的搜索按钮时完成。这将在控制器中的操作中进行。但是,如果没有来自所有站点的API,则需要运行单独的作业,对这些站点进行爬网并为数据编制索引。谷歌搜索这些术语的确切含义。所以,当你的用户搜索时,他将从索引中返回数据,而不是API调用。嘿,谢谢,我会尝试一下(纽约证券交易所:),你能提供你的邮件id吗?这样dat可以澄清是否有任何疑问哈哈!我不是在为你做项目!:)请随意询问更多有关stackoverflow的问题,我可以这样回答。如果你认为这有帮助的话,请考虑支持/接受答案:)我尝试在索引x.gSP页面中添加{action=}这个链接。它会将它引导到指定了bookname页面的flipkart站点。但我无法了解如何比较3个站点,然后将它引导到各自的站点。请尝试安装Grails REST客户端(),并从服务器(即从控制器或服务)调用它。使用flipkart url尝试使用HTTP{…}和AsyncHTTP{…}。您必须解析返回的HTML(看起来Flipkart没有API)。