【问题标题】:Method of extracting data from a website?从网站中提取数据的方法?
【发布时间】:2013-05-15 19:36:47
【问题描述】:

我想从一个网站获取数据(例如,姓名、身份证号和某人正在使用的资源列表)并将其发布到另一个网站。

我想做的是使用 cURL 从一个网站上的现有 REST api 中获取信息。然后,我想做的是编写一个程序或 api 将这些信息发布到另一个网站上。

使用 cURL 后,我如何/在哪里存储该信息,以便我可以通过另一个程序使用它?编写一个从第一个网站提取信息并将其发布到另一个网站的程序会更容易吗?如果是这样,是否可以使用 Java 来做到这一点/给出如何做到这一点的想法?我不是要代码,只是一种方法。我正在使用 Eclipse for Java Web EE 开发人员的 IDE。

【问题讨论】:

  • 您的 IDE 没有任何区别。 curl 或使用URLConnection 提取数据,将其写入文本文件,然后读取并执行您想要的操作。互联网上都有关于您问题的每个步骤的教程和问题/答案。

标签: java web-services http curl web-scraping


【解决方案1】:

我会把它写成 2-3 个程序。一种用于提取数据,一种用于格式化数据(如有必要),一种用于发布数据。

我的直觉告诉我,最简单的方法是使用纯 bash 脚本。但是,如果您想为此使用 Java,则可以。

我会将输出保存在一个文件中以供发布者读取。这样做的好处是让您在没有其他 2 个程序工作的情况下编写/测试海报。也就是说,我建议您先编写 get-er 程序。这样你就知道你真正在处理什么数据。

现在,如果您碰巧用 java 编写了格式化程序和 post-er,我会将其编写为一个程序,而不是在它们之间“管道”文件。格式化程序将读取文件,将其转换为数据结构/类,发布者将读取此数据结构/类。

这与我之前的段落只是表面上的不同。关键是每个“部分”是相互独立的。这允许您在不运行整个项目的情况下测试一个部分。这才是最重要的。

至于如何/在哪里存储来自 get-er 的信息,只需将其重定向到文件即可。 Here's a tutorial on how.

说实话,我不知道您使用的是 linux cURL 程序还是java implementation like this one。根据这一点,我的答案会非常不同。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2018-04-03
    • 2015-08-26
    • 1970-01-01
    • 2023-04-05
    • 2016-02-27
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多