我可以在我的网站上使用其他网站搜索结果吗?

时间:2013-05-17 17:25:09

标签: java search web-applications map

我必须开发一个在地图上显示某些地方的网络应用程序,这些地方已经可以在其他网站地图上找到...有可能,从我的应用程序,我称之为其他网站搜索表单并收集结果?

3 个答案:

答案 0 :(得分:5)

我建议使用标准API

  1. YQL

      

    雅虎!查询语言是一种富有表现力的类SQL语言   您可以跨Web服务查询,过滤和连接数据。

  2. Bing APItypical usage

  3. How can you search Google Programmatically Java API

答案 1 :(得分:3)

它可能......但合法性是另一个问题。

如果使用GET在“另一个”网页上搜索引擎,则其更简单(当然,使用POST也可以这样做)。只需创建URL,在应用程序中加载其内容,然后为生成的HTML编写解析器。很有可能,结果将以稳定的方式形成(表格,divitis),因此更容易。只需为结果HTML(或其他类型)编写简单的正则表达式,然后从中获取结果。

从搜索结果中挖掘这种“强力”数据的问题是,如果他们更改了自己的页面,那么您的应用就会“下地狱”。在我的应用程序中,我解决了使用extarnal配置文件,包括只更改搜索查询和外部正则表达式的URL。

示例:

URL: http://www.example.com/search.php?query=[SEARCHED_DATA]

文字[SEARCHED_DATA]在应用内被替换为您正在搜索的内容。

如果更改了页面,您可以轻松地进行应用更新,而无需重建。

一些提供搜索API的页面,这是更好的方法。但是从我的问题来看,我认为,事实并非如此。

答案 2 :(得分:3)

您最好的选择是尝试与提供某种API访问权限的网站集成。试图从第三方网站抓取HTML是一件麻烦事。