Java 使用Talend根据输入的关键字将HTML搜索页面提取到.txt文件中。如何端到端解析这些数据并将其写入MySQL?

Java 使用Talend根据输入的关键字将HTML搜索页面提取到.txt文件中。如何端到端解析这些数据并将其写入MySQL?,java,mysql,parsing,talend,Java,Mysql,Parsing,Talend,要添加到标题:我现在有一个由两个步骤组成的工作流程 1) 我为input.txt文件中给出的每个关键字提取HTML搜索结果页。-e、 g: SAP; Business Intelligence; Talend保存了这些结果,并将它们作为HTML写入keywords\u SAP.txt和keywords\u Business Intelligence.txt。附件是talend作业的图像 2) 我使用Java代码导入这些文件(一个接一个)——使用JSoup库解析DOM结构中的数据。然后,数据

要添加到标题:我现在有一个由两个步骤组成的工作流程

1) 我为input.txt文件中给出的每个关键字提取HTML搜索结果页。-e、 g:

SAP; 
Business Intelligence;
Talend保存了这些结果,并将它们作为HTML写入
keywords\u SAP.txt
keywords\u Business Intelligence.txt
。附件是talend作业的图像

2) 我使用Java代码导入这些文件(一个接一个)——使用JSoup库解析DOM结构中的数据。然后,数据被写入MySQL数据库

这是我的问题:目前一切正常,但将来需要完全自动化这个过程,这样它就可以定期在服务器上运行

因此,我想在Talend中包含我的Java代码——这让我陷入了困境,因为我无法导入mysql连接器和jsoup.jar

我需要你的帮助的地方是建议我如何连接到我现有的Talend工作流,或者你可能正在考虑一个更简单的解决方案,而我现在没有考虑


我必须补充一点,我对编码非常陌生,在解析和写入数据库方面走到这一步是一个巨大的飞跃。在整个过程中有你的帮助,我变得更舒服了。我希望你能帮我解决这个问题。提前感谢您花费的时间。

这可以通过使用tLoadLibrary组件并将外部jar文件放入
/lib/java

您可以使用onSubJobOk或onComponentOK连接连接到下一个组件

您的tLibraryLoad组件应该是您在工作中要做的第一件事

您还可以在组件视图的高级属性下导入tJava、tJavaRow中的类/方法,然后使用类似以下内容:

import org.apache.commons.lang3.math.NumberUtils;

要导入所需的特定类(在本例中为Apache Commons NumberUtils)。

您可以在流中使用tLoadLibrary,记住使用OnSubjobOk,您应该使用tJava代码。

虽然此线程已经运行了2年,您可能已经解决了此问题,但我最近做了一个类似的小型项目,这可能会对您有所帮助。我使用的是纯字符串操作,而不是JSoup库。还有一个逐步说明的相关视频。希望能有帮助


您是说您需要关于如何导入外部jar的帮助,如“导入mysql连接器和jsoup.jar”“这可以通过tLoadlibrary方法完成,并将外部jar放入…talendinstalldire/lib/java文件夹?是的,这是一个步骤。那么,如何将这个tLoadlibrary与流连接起来?我需要使用那里的箭头还是在流程页面上保持单个箭头?您可以使用触发器-onSubJobOk或onComponentOK连接到下一个组件…tLibraryload应该是您工作中的第一件事。您还可以在advanceproperties import xxx.yyy下导入tJava、tJavaRow中的类/方法……。您应该能够在tJava/tJavaRow(取决于您的数据流)组件中完成所有这一切,或者(可能更好)将所有代码放在例程中,并在tJava/tJavaRow中调用它。不过,我建议使用提供的数据库连接器(比如tMySqlOutput)来处理数据库,因为这样可以更好地处理错误,并且人们可以更容易地维护您的作业。一般来说,如果不能使用Talend提供的组件来完成,我只会将自定义Java代码放入作业中。它有助于保持逻辑的合理分离。