Подтвердить что ты не робот

Как анализировать данные в Talend с помощью Java (начиная с ранее созданного файла .txt)?

У меня есть процесс в Talend, который получает результат поиска на странице, сохраняет html и записывает его в файлы, как показано здесь:

enter image description here

Первоначально у меня был двухэтапный процесс с разбором даты из файлов HTML в Java. Вот код: он работает и записывает его в базу данных mysql. Вот код, который в основном делает именно это. (Я новичок, извините за отсутствие элегантности)

package org.jsoup.examples;

import java.io.*;   

import org.jsoup.*;
import org.jsoup.nodes.*;
import org.jsoup.select.Elements;

import java.io.IOException;


public class parse2 {       
    static parse2 parseIt2 = new parse2();
    String companyName = "Platzhalter";
    String jobTitle = "Platzhalter";
    String location = "Platzhalter";
    String timeAdded = "Platzhalter";

    public static void main(String[] args) throws IOException {
        parseIt2.getData();
    }

    // 
    public void getData() throws IOException {
        Document document = Jsoup.parse(new File("C:/Talend/workspace/WEBCRAWLER/output/keywords_SOA.txt"), "utf-8");
        Elements elements = document.select(".joblisting");
        for (Element element : elements) {
            // Parse Data into Elements
            Elements jobTitleElement = element.select(".job_title span");
            Elements companyNameElement = element.select(".company_name span[itemprop=name]");
            Elements locationElement = element.select(".locality span[itemprop=addressLocality]");
            Elements dateElement = element.select(".job_date_added [datetime]");

            // Strip Data from unnecessary tags
            String companyName = companyNameElement.text();
            String jobTitle = jobTitleElement.text();
            String location = locationElement.text();
            String timeAdded = dateElement.attr("datetime");

            System.out.println("Firma:\t"+ companyName + "\t" + jobTitle + "\t in:\t" + location + " \t Erstellt am \t" + timeAdded );
        }  
    }
}

Теперь я хочу выполнить процесс "Конец-конец" в Talend, и я убедился, что это работает. Я попробовал это (что выглядит довольно теневым для меня): enter image description here

В основном я помещаю весь импорт в "расширенные настройки" и код в разделе "Основные настройки". Считается, что эта importLibrary загружает библиотеку разбора jsoup, а также соединение mysql (возможно, я могу подключиться к инструментам талантов).

Очевидно, что это не работает. Я попытался снять базовый код с классов и прочее, и это было еще хуже. Можете ли вы мне помочь, как получить сгенерированные файлы .txt, обработанные с помощью Java здесь?

EDIT: Вот ссылка на талант Job http://www.share-online.biz/dl/8M5MD99NR1

EDIT2: я изменил код на тот, который я пробовал в JavaFlex. Но это не сработало (часть импорта в начальной части кода, остальная часть в "body/main" и ничего в "конце".

4b9b3361

Ответ 1

Это проблема, связанная с Talend, в вашем коде, использовать полные имена методов, включая их пакеты. Например, для анализа документа вы можете использовать:

Document document =  org.jsoup.Jsoup.parse(new File("C:/Talend/workspace/WEBCRAWLER/output/keywords_SOA.txt"), "utf-8");