Java - лучший способ загрузить исходный HTML-код веб-страницы - PullRequest
1 голос
/ 02 мая 2011

Я пишу маленький гусеничный ход.Каков наилучший способ загрузить исходный HTML-код веб-страницы?В настоящее время я использую небольшой фрагмент кода ниже, но иногда результат составляет только половину исходного кода страницы !!!Я не знаю в чем проблема.Некоторые люди предлагали мне использовать Jsoup, но использование функции .get.html () из Jsoup также возвращает половину источника страницы, если она слишком длинная.Поскольку я пишу сканер, очень важно, чтобы метод поддерживал Unicode (UTF-8), и эффективность также очень важна.Я хотел знать лучший современный способ сделать это, поэтому я спросил вас, ребята, так как я новичок в Java.Спасибо.

Код:

public static String downloadPage(String url)
    {
        try
        {
            URL pageURL = new URL(url);
            StringBuilder text = new StringBuilder();
            Scanner scanner = new Scanner(pageURL.openStream(), "utf-8");
            try {
                while (scanner.hasNextLine()){
                    text.append(scanner.nextLine() + NL);
                }
            }
            finally{
                scanner.close();
            }
            return text.toString();
        }
        catch(Exception ex)
        {
            return null;
        }
    }

Ответы [ 2 ]

5 голосов
/ 02 мая 2011

Я использую commons-io String html = IOUtils.toString(url.openStream(), "utf-8");

2 голосов
/ 03 мая 2011

Лично я очень доволен библиотекой Apache HTTP http://hc.apache.org/httpcomponents-client-ga/. Если вы пишете веб-сканер, которым я также являюсь, вы можете по достоинству оценить его контроль над такими вещами, как файлы cookie и общий доступ к клиентам и тому подобное.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...