Есть ли какие-либо критерии, чтобы судить, что сайт пуст и не имеет контента, использующего Java? - PullRequest
0 голосов
/ 13 марта 2019

Моя проблема заключается в следующем.В настоящее время я занимаюсь веб-сканированием для моего последнего года.Я хочу просканировать веб-страницы с доменами .org и архивом для анализа текста.Сказав про фон.

В процессе сканирования также было обнаружено количество пустых .org сайтов, на которых размещены сайты.Есть ли какие-то критерии, которые мы могли бы использовать, чтобы не сканировать веб-сайты, имеющие контента ?

В настоящее время я передаю URL, и он читает содержимое URL HTML в Java.Хотя веб-сайты не содержат никакого контента, он все же имеет код HTML.Не могли бы вы предложить мне способ сделать это?

Я пытался выяснить доступность текста, доступность изображения, но не удалось остановить обнаружение 100% пустых веб-страниц.

1 Ответ

0 голосов
/ 17 марта 2019

Наконец-то я смог обнаружить пустые веб-страницы в зависимости от их размера (ниже 3 КБ) и сканирования содержимого. Сначала я загружаю контент HTML через URLConnection и сохраняю его в памяти.

public ArrayList<String> captureHtmlTags(String inputUrl) {
        ArrayList<String> readWebsiteHTMLTags = new ArrayList<String>();

        try {
            URL url = new URL(inputUrl);
            try {
                URLConnection connection = url.openConnection();
                // open the stream and assign it into buffered reader..
                BufferedReader bufferedReader = new BufferedReader(new InputStreamReader(connection.getInputStream()));
                String inputLine;
                if (bufferedReader.readLine() != null) {

                    while ((inputLine = bufferedReader.readLine()) != null) {
                        Document doc = Jsoup.parse(inputLine);
                        readWebsiteHTMLTags.add(String.valueOf(doc));
                    }
                    bufferedReader.close();
                    readWebsiteHTMLTags.size();
                } else {
                }
            } catch (IOException e) {
                e.printStackTrace();
            }
        } catch (MalformedURLException e) {
            e.printStackTrace();
        }
        return readWebsiteHTMLTags;
    }

Затем, используя библиотеку iText 7, я конвертирую чтение HTML в PDF и сканирую текстовое содержимое.

public String convertWebsiteToPdf(ArrayList<String> htmlCode) {
        String generateHtmlPage = null;
        String fileLocation = CONST_FILE_PATH; // path to save the PDFs
        generateHtmlPage = htmlCode.toString();
        FileOutputStream fileOutputStream = null;
        try {
            try {
                fileOutputStream = new FileOutputStream(fileLocation);
                HtmlConverter.convertToPdf(generateHtmlPage, fileOutputStream);
                fileOutputStream.close();
            } catch (Exception e) {
                System.out.println("");
            }

        } catch (Exception e) {
            e.printStackTrace();
        } finally {
            try {
                if (fileOutputStream != null) {
                    fileOutputStream.close();
                }
            } catch (IOException e) {
                e.printStackTrace();
            }
        }
        return fileLocation;
    }

Если содержимое не найдено вместе с небольшим размером файла, я считаю его пустой веб-страницей.

Наконец-то это сработало.

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