2009-10-09 2 views
2

나는 ajax google API를 사용하여 Google에서 문자열을 검색하고 있습니다. 그것은 텍스트를 포함한 모든 태그를 가진 모든 HTML 파일을 반환하고 있습니다.자바를 사용하는 검색 텍스트 만

텍스트 만 받고 싶다면 무엇을 사용해야합니까?

내 프로그램이 Java로되어 있습니다.

감사

Manjot 나는 약간의 인터넷 검색을했고이 발견

답변

2

: 보조 노트로

import java.io.BufferedReader; 
import java.io.InputStreamReader; 
import java.net.URL; 
import java.net.URLConnection; 
import java.net.URLEncoder; 
import org.json.JSONArray;  // JSON library from http://www.json.org/java/ 
import org.json.JSONObject; 

public class GoogleQuery { 

// Put your website here 
private final String HTTP_REFERER = "http://www.example.com/"; 

public GoogleQuery() { 
    makeQuery("questio verum"); 
    makeQuery("info:http://frankmccown.blogspot.com/"); 
    makeQuery("site:frankmccown.blogspot.com"); 
} 

private void makeQuery(String query) { 

    System.out.println(" Querying for " + query); 

    try 
    { 
    // Convert spaces to +, etc. to make a valid URL 
    query = URLEncoder.encode(query, "UTF-8"); 

    URL url = new URL("http://ajax.googleapis.com/ajax/services/search/web?start=0&rsz=large&v=1.0&q=" + query); 
    URLConnection connection = url.openConnection(); 
    connection.addRequestProperty("Referer", HTTP_REFERER); 

    // Get the JSON response 
    String line; 
    StringBuilder builder = new StringBuilder(); 
    BufferedReader reader = new BufferedReader(
    new InputStreamReader(connection.getInputStream())); 
    while((line = reader.readLine()) != null) { 
    builder.append(line); 
    } 

    String response = builder.toString(); 
    JSONObject json = new JSONObject(response); 

    System.out.println("Total results = " + 
    json.getJSONObject("responseData") 
    .getJSONObject("cursor") 
    .getString("estimatedResultCount")); 

    JSONArray ja = json.getJSONObject("responseData") 
    .getJSONArray("results"); 

    System.out.println(" Results:"); 
    for (int i = 0; i < ja.length(); i++) { 
    System.out.print((i+1) + ". "); 
    JSONObject j = ja.getJSONObject(i); 
    System.out.println(j.getString("titleNoFormatting")); 
    System.out.println(j.getString("url")); 
    } 
    } 
    catch (Exception e) { 
    System.err.println("Something went wrong..."); 
    e.printStackTrace(); 
    } 
} 

public static void main(String args[]) { 
    new GoogleQuery(); 
} 
} 

: 여기

http://www.ajaxlines.com/ajax/stuff/article/using_google_is_ajax_search_api_with_java.php

이 예제 코드 거기에서 니펫을 , 당신은 조심해야합니다. Google TOS : "귀하는 자동화 된 방법 (스크립트 또는 웹 크롤러 사용 포함)을 통해 서비스에 액세스하지 않거나 액세스하려고 시도하지 않을 것에 동의하며 모든 로봇에 명시된 지침을 준수하는지 확인해야합니다 .txt " - http://www.google.com/accounts/TOS

+0

고맙습니다. – Manjot

관련 문제