国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 網站 > WEB開發 > 正文

利用Yahoo! Search API開發自已的搜索引擎-javascript版

2024-04-27 13:54:36
字體:
來源:轉載
供稿:網友

    美國東部時間3月1日,雅虎公司聯合創始人之一的楊致遠將宣布公司的搜索網絡將進入Web服務。雅虎公司在www.developer.yahoo.com網站建立了Yahoo Search Developer Network,公司計劃在此紐約舉行的搜索引擎戰略大會(Search Engine Strategies Conference)上推出這一計劃。該網絡將允許開發者在雅虎搜索之上建立新的應用程序,其中包括圖像、視頻、新聞以及地區搜索等內容。想要使用這項服務的會員必須先去http://api.search.yahoo.com/webservices/register_application  申請一個自已的ID號,注:每個ID號每天只能搜索5000次。

    下面我們看一下,如何用javascript腳本調用Yahoo! Search API實現搜索的效果,全部腳本如下:
  

/*
 * yahoo_search_api.js
 * Part of the Yahoo! Search Sidebar for Firefox
 * powered by Yahoo! Search web services (http://api.search.yahoo.com)
 * Written by Marc Abramowitz (http://marc.abramowitz.info)
 * Copyright (C) 2005 Yahoo! Inc.
 * m.survivalescaperooms.com
 */

function Yahoo_Search() {}

Yahoo_Search.baseURL = function () {
  return "}

Yahoo_Search.appid = function () {
  return "YahooSearchSidebar";
}

Yahoo_Search.baseArgs = function () {
  return "appid=" + this.appid();
}

Yahoo_Search.Results = function (args) {
  var
xmlUrl = this.baseURL() + "webSearch?"
       + this.baseArgs()
       + "&query=" + args["Doc"]
       + "&zip="
       + "&start=" + args["First"]
       + "&results=" + args["Count"];
  var xmlhttp = new XMLHttPRequest();
  xmlhttp.open("GET", xmlUrl, false);
  xmlhttp.send(null);
  return this.readXML(xmlhttp.responseXML);
}

Yahoo_Search.readXML = function (xmlDoc) {
  try {
    var retVal = new Array();
    var resultSet = xmlDoc.getElementsByTagName("ResultSet")[0];
    var totalResultsAvailable = parseInt(resultSet.getAttribute("totalResultsAvailable")); 
    var totalResultsReturned = parseInt(resultSet.getAttribute("totalResultsReturned"));
    var firstResultPosition = parseInt(resultSet.getAttribute("firstResultPosition"));
    var start = firstResultPosition;
    var end = firstResultPosition + totalResultsReturned - 1; 
    var results = xmlDoc.getElementsByTagName("Result");
    for (var i = 0; i < results.length; i++) {
      var result = results[i];         
      var title = result.getElementsByTagName('Title')[0].firstChild.nodeValue;
      var summary = '';
      if (result.getElementsByTagName('Summary')[0].firstChild) {
        summary = result.getElementsByTagName('Summary')[0].firstChild.nodeValue;
      }
      var clickUrl = result.getElementsByTagName('ClickUrl')[0].firstChild.nodeValue;
      var url = result.getElementsByTagName('Url')[0].firstChild.nodeValue;
      retVal[i] = { I: start + i, Title: title, Summary: summary, ClickUrl: clickUrl, Url: url };
    }

    return retVal;
  } catch(exception) {
    alert('Exception occurred while reading XML (i=' + i + '; start=' + start + ';end=' + end + '): ' + exception);
  }
}


有興趣的朋友還可以看一下由[動態網站制作指南]所制作的asp版本:http://m.survivalescaperooms.com/yahoo/


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 祁东县| 塔城市| 托里县| 新巴尔虎右旗| 梅河口市| 齐齐哈尔市| 临猗县| 伊川县| 资源县| 五华县| 荥经县| 随州市| 德化县| 东乌珠穆沁旗| 乌拉特前旗| 营口市| 休宁县| 临漳县| 祁阳县| 杭锦后旗| 德清县| 隆尧县| 华安县| 射洪县| 七台河市| 都江堰市| 依兰县| 石林| 宜君县| 府谷县| 滦南县| 新巴尔虎右旗| 来安县| 克拉玛依市| 河曲县| 灵川县| 获嘉县| 河曲县| 天门市| 神木县| 沂源县|