Создание сканера с HTTPClient - PullRequest
       48

Создание сканера с HTTPClient

0 голосов
/ 31 октября 2019

Мне нужно сделать веб-сканер для сбора ссылок и информации с определенного веб-сайта. Мне также нужно использовать Apache HTTP Client, и я просматривал учебник на сайте в течение нескольких дней, и я ничего не получил. Сейчас я пытаюсь выяснить, как использовать Apache HTTPClient для захвата HTML, чтобы я мог разобрать его. Честно говоря, это может быть непониманием того, для чего должен использоваться HTTPClient. Любая помощь будет принята с благодарностью.

1 Ответ

0 голосов
/ 31 октября 2019

хм ... вот оно, но ... не удивляйтесь, если вы увидите не то, что видите в браузере. Как я уже сказал, вы получите то, что сервер фактически возвращает по запросу:

    HttpClient client = new HttpClient();       
    HostConfiguration hostConfig = new HostConfiguration();
    hostConfig.setHost("my.site.com", 80, Protocol.getProtocol("http"));
    client.setHostConfiguration(hostConfig);
    GetMethod getHtmlPageMethod = new GetMethod("/myPage.html");
    getHtmlPageMethod.setFollowRedirects(true);     
    try {
        int responseCode = client.executeMethod(getHtmlPageMethod);
        System.out.println("Got response code: " + responseCode);           
        if (200 == responseCode) {
            System.out.println("Response code 200 - SUCCESS ... go for response body... ");
            String responseBody = getHtmlPageMethod.getResponseBodyAsString();
            if (null != responseBody) {
                System.out.println("Got body string:" + System.lineSeparator());
                System.out.println(responseBody);
            } else
            {
                System.out.println("No response body returned!");
            }
        } 
    } catch (Exception e) {
        e.printStackTrace();
    }
...