tRest并使用TALEND将tExtractJSONField与JSON映射

Ali*_*oud 5 rest json talend

我对Talend很新,我很难使用tRest获取JSON数据.

我们假设我试图从社交网络获取所有帖子.

这就是我使用https://tagboard.com获取以JSON格式化的数据的原因.

这是我尝试过的一个场景.我有这样的输出JSON数据,来自https://post-cache.tagboard.com/search/tunisie?count=2,有2个帖子作为示例,我删除了一些节点以澄清......:

{
"posts": 
 [
    {
        "network": "twitter",
        "post_id": "547835328170823680",
        "text": "#tunisie .. #tunis",
        "html": " ",
        "permalink": " ",
        "post_time": 1419449095,
        "user_id": "159415522",
        "user_name": " ",
        "user_real_name": " ",
        "user_profile_image_url": " ",
        "hashtags": [ "tunisie", "tunis" ]        
    },
    {
        "network": "Facebook",
        "post_id": "547835328170823680",
        "text": "#tunisia .. #tunis",
        "html": " ",
        "permalink": " ",
        "post_time": 1777449095,
        "user_id": "159995522",
        "user_name": " ",
        "user_real_name": " ",
        "user_profile_image_url": " ",
        "hashtags": [ "tunisia", "tunis2" ]        
    }
]
}
Run Code Online (Sandbox Code Playgroud)

这是第一个Talend工作:

在此输入图像描述

我配置tExtractJSONField 从数据中提取文本字段,如下所示:

在此输入图像描述

在此输入图像描述

事实上,我需要这些字段:newtork,文字,post_time和列表井号标签.

由于映射表上的Body,我认为我无法添加更多属性来映射其余字段.

我发现有一种方法可以使用tXMLMap映射数据,其中可以扩展body字段以添加更多字段:

在此输入图像描述

我相信有一种方法可以为JSON做同样的事情,但我不知道如何和我等待你的帮助.

Ali*_*oud 2

您必须使用tMap组件在此输入图像描述

您必须像这个示例一样配置数据模式:

在此输入图像描述