尧图网站建设 尧图网络
  • 首页
  • 关于我们
  • 服务项目
  • 案例展示
  • 建站流程
  • 资讯中心
  • 联系我们
首页/资讯中心/详情

MapReduce清洗数据 -

MapReduce清洗数据 -
📅 发布时间:2026/6/22 7:18:27
MapReduce清洗数据

通过爬虫爬取的数据保存为JSON格式,然后将JSON数据清洗,得到想要的数据

package com.example.jingd;import com.fasterxml.jackson.databind.JsonNode;
import com.fasterxml.jackson.databind.ObjectMapper;
import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.FileReader;
import java.io.FileWriter;
import java.io.IOException;
import java.nio.file.Files;
import java.nio.file.Paths;public class CommentCleanerSimple {public static void main(String[] args) {String inputFilePath = "src/main/resources/jd_comments_raw_20251026_135759.json";String outputFilePath = "target/cleaned_comments.csv";ObjectMapper objectMapper = new ObjectMapper();try {// 确保输出目录存在Files.createDirectories(Paths.get("target"));// 创建输入输出流BufferedReader reader = new BufferedReader(new FileReader(inputFilePath));BufferedWriter writer = new BufferedWriter(new FileWriter(outputFilePath));// 写入CSV标题行writer.write("用户名,评论ID,评分,评论日期,评论内容,用户等级,购买型号,购买次数,购买信息,产品规格\n");String line;while ((line = reader.readLine()) != null) {try {// 解析JSON数据JsonNode jsonNode = objectMapper.readTree(line);// 提取需要的字段String userNickName = jsonNode.has("userNickName") ? jsonNode.get("userNickName").asText() : "";String commentId = jsonNode.has("commentId") ? jsonNode.get("commentId").asText() : "";String commentScore = jsonNode.has("commentScore") ? jsonNode.get("commentScore").asText() : "";String commentDate = jsonNode.has("commentDate") ? jsonNode.get("commentDate").asText() : "";// 处理评论内容:移除特殊字符、换行符,将英文逗号替换为中文逗号String commentData = "";if (jsonNode.has("commentData")) {// 简单直接的字符串处理方式commentData = jsonNode.get("commentData").asText().replace('\n', ' ')  // 替换换行符为空格.replace('\r', ' ')  // 替换回车符为空格.replace(',', ',')  // 将英文逗号替换为中文逗号.replaceAll("[\\\\/\\*\\(\\)\\[\\]\\{\\}\\^\\$\\|\\?\\+\\.\\<\\>\\!\\@\\#\\%\\^\\&\\*]", "")  // 移除常见特殊字符.trim();  // 去除首尾空白}// 提取用户等级String userLevel = jsonNode.has("officerLevel") ? jsonNode.get("officerLevel").asText() : "";// 提取购买型号(从wareAttribute数组中获取)String productModel = "";if (jsonNode.has("wareAttribute") && jsonNode.get("wareAttribute").isArray()) {for (JsonNode attr : jsonNode.get("wareAttribute")) {if (attr.has("型号")) {productModel = attr.get("型号").asText();break;}}}// 提取购买次数String buyCount = jsonNode.has("buyCount") ? jsonNode.get("buyCount").asText() : "";// 提取购买信息文本String buyCountText = jsonNode.has("buyCountText") ? jsonNode.get("buyCountText").asText().replaceAll(",", ",") : "";// 提取产品规格信息String productSpecifications = jsonNode.has("productSpecifications") ? jsonNode.get("productSpecifications").asText().replaceAll(",", ",") : "";// 构建CSV行String csvLine = String.join(",", userNickName, commentId, commentScore, commentDate, commentData,userLevel, productModel, buyCount, buyCountText, productSpecifications);writer.write(csvLine + "\n");} catch (Exception e) {System.err.println("解析JSON失败: " + e.getMessage());e.printStackTrace();}}reader.close();writer.close();System.out.println("数据清洗完成!结果保存在: " + outputFilePath);} catch (IOException e) {System.err.println("文件操作失败: " + e.getMessage());e.printStackTrace();}}
}

然后得到.csv数据文件
image

相关新闻

  • 2025年10月上海胎记医院推荐榜单:权威机构综合对比分析
  • 2025年10月上海胎记医院评价指南:从资质到服务的全面对比分析
  • 2025年10月上海胎记医院选择排行:基于真实用户反馈的实用指南

最新新闻

  • Spring @Value底层原理与配置治理实战指南
  • GLM-5.1 NPU量化版:硬件感知推理的范式跃迁
  • Java SSRF漏洞深度解析:从原理到实战防御
  • Java文件路径三要素:绝对路径、规范路径与相对路径深度解析
  • 手撕Transformer:从矩阵形状到梯度流向的逐层拆解
  • 2026年太原武氏家居费用解析,如何选择高性价比产品? - myqiye

日新闻

  • 2026速览惠州叛逆青少年学校前十大排名名单出炉 - 武汉中职最新信息发布
  • 2026上饶白蚁消杀哪家好?15年本土2大权威白蚁防治公司推荐(金盾虫控/青蚁卫士) - 我叫一
  • 天龙八部单机版终极数据管理工具:5个技巧快速掌握游戏数据编辑

周新闻

  • Visual C++运行库修复终极指南:5分钟快速解决Windows软件启动错误
  • 手把手教你构建统计局地区经济数据爬虫:从环境搭建到数据持久化全指南
  • 2026多Agent深度解析:用AI团队替代单一模型,四种架构实战落地

月新闻

  • 【总结】入门篇:50句话让你记住架构核心概念
  • WeChatMsg技术方案解析:实现Mac微信数据自主管理的完整解决方案
  • WeChatMsg:革新性微信数据备份方案,打造你的专属数字记忆库

关于尧图

  • 公司简介
  • 团队介绍
  • 企业文化
  • 荣誉资质

服务项目

  • 定制开发
  • 电商建站
  • UI 设计
  • 运维服务

快速链接

  • 案例展示
  • 建站流程
  • 常见问题
  • 资讯中心

联系方式

  • 📍北京市朝阳区互联网产业园 A 座 10 层
  • 📞400-888-8888
  • ✉️contact@rkmt.cn
  • 🕐周一至周日 9:00-21:00

© 2024 北京尧图网络科技有限公司 版权所有 | 京 ICP 备 XXXXXXXX 号