Как получить URL-адрес с веб-сайта, используя Java?

Я хочу использовать команды HTTP GET и POST для получения URL-адресов с веб-сайта и анализа HTML. Как мне это сделать?

11.12.2008 14:02:10
5 ОТВЕТОВ
РЕШЕНИЕ

Вы можете использовать HttpURLConnection в сочетании с URL .

URL url = new URL("http://example.com");
HttpURLConnection connection = (HttpURLConnection)url.openConnection();
connection.setRequestMethod("GET");
connection.connect();

InputStream stream = connection.getInputStream();
// read the contents using an InputStreamReader
20
11.12.2008 18:02:05
Создайте BufferedReader, используя InputStream для чтения содержимого в
rockit 24.05.2010 15:07:42

Используйте http://hc.apache.org/httpclient-3.x/

0
11.12.2008 14:05:54

Самый простой способ сделать GET - использовать встроенный java.net.URL. Однако, как уже упоминалось, httpclient - это правильный путь, поскольку он позволит вам, среди прочего, обрабатывать перенаправления.

Для анализа html вы можете использовать html parser .

3
11.12.2008 14:25:44

Я использовал JTidy в проекте, и он работал довольно хорошо. Список других парсеров здесь , но кроме JTidy я не знаю ни одного из них.

0
11.12.2008 17:55:41

Отмеченный / одобренный ответ для этого от robhruska - спасибо. Это показывает самый простой способ сделать это, это просто с пониманием того, что необходимо для создания простого URL-соединения. Однако более долгосрочной стратегией будет использование HTTP-клиента для более сложных и многофункциональных способов выполнения этой задачи.

Спасибо всем, вот быстрый ответ снова:

URL url = new URL("http://example.com");
HttpURLConnection connection = (HttpURLConnection)url.openConnection();
connection.setRequestMethod("GET");
connection.connect();

InputStream stream = connection.getInputStream();
// read the contents using an InputStreamReader
4
12.12.2008 09:55:17