Я ссылаюсь на ответ, чтобы проанализировать результат поиска Google.Анализ результатов поиска Google Ошибка
How can you search Google Programmatically Java API
Однако, когда я пытаюсь код .error происходит.
Как мне внести изменения?
import java.net.URLDecoder;
import java.net.URLEncoder;
import org.jsoup.Jsoup;
import org.jsoup.nodes.Element;
import org.jsoup.select.Elements ;
public class JavaApplication22 {
public static void main(String[] args) {
String google = "http://www.google.com/search?q=";
String search = "stackoverflow";
String charset = "UTF-8";
String userAgent = "ExampleBot 1.0 (+http://example.com/bot)"; // Change this to your company's name and bot homepage!
Elements links = Jsoup.connect(google + URLEncoder.encode(search, charset)).userAgent(userAgent).get().select(".g>.r>a");
for (Element link : links) {
String title = link.text();
String url = link.absUrl("href"); // Google returns URLs in format "http://www.google.com/url?q=<url>&sa=U&ei=<someKey>".
url = URLDecoder.decode(url.substring(url.indexOf('=') + 1, url.indexOf('&')), "UTF-8");
if (!url.startsWith("http")) {
continue; // Ads/news/etc.
}
System.out.println("Title: " + title);
System.out.println("URL: " + url);
}
}
}
Я думаю, это потому, что библиотеки имеют значение. Но я пробовал ctrl +shift+i
. Он показывает, что ничего не исправлять в операторах импорта.
Ошибка
Exception in thread "main" java.lang.RuntimeException: Uncompilable
source code - unreported exception java.io.IOException; must be caught
or declared to be thrown at
javaapplication22.JavaApplication22.main(JavaApplication22.java:32)
Как следует изменить код, чтобы я мог разобрать результат поиска Google?
Поставив этот код в класс? –
@Samuel Kok Да, я просто поместил весь код в один класс – evabb
Я не вижу никакого класса в вашем коде выше. Просто основной метод –