当前位置: 首页 > news >正文

移动网站垂直电商网站如何做内容运营

移动网站,垂直电商网站如何做内容运营,网站推广需要多少钱易下拉系统,中国建设招聘信息网站Python 爬虫数据清洗与存储:基础教程 在爬虫数据获取完成后,数据往往是“原始”的,不适合直接使用。清洗和存储是将爬取到的原始数据转化为有用信息的关键步骤。本文将系统地介绍 Python 中进行数据清洗与存储的基本方法,帮助新手…

Python 爬虫数据清洗与存储:基础教程

在爬虫数据获取完成后,数据往往是“原始”的,不适合直接使用。清洗和存储是将爬取到的原始数据转化为有用信息的关键步骤。本文将系统地介绍 Python 中进行数据清洗与存储的基本方法,帮助新手理解如何处理爬虫数据,使其更加适合分析和使用。

在这里插入图片描述

1. 数据清洗的意义和作用

数据清洗指的是将爬取到的数据转换为结构化、准确且一致的格式,去除无效数据、处理缺失值、规范化格式、解析数据等。无论是进一步的分析、模型训练还是数据库存储,清洗后的数据都将更加高效和精准。

爬虫获取的数据常见问题:

  • 数据缺失:某些字段可能为空或格式不一致。
  • 噪音数据:可能包含广告、注释等无用信息。
  • 格式不规范:如日期格式、文本的编码、大小写不一致等。

在本文中,我们将使用一些示例代码展示如何进行数据清洗和存储。

2. 常用的数据清洗库

Python 提供了多种库用于数据清洗,其中最常用的有:

  • Pandas:提供了灵活的数据操作功能,可用于数据的清洗、转换和处理。
  • re(正则表达式库):用于字符串模式匹配和数据清理。
  • BeautifulSoup:用于解析 HTML,清洗网页数据。
  • NumPy:用于处理数值数据,补齐缺失值等。

安装 Pandas 和 BeautifulSoup:

pip install pandas beautifulsoup4

3. 示例数据集

假设我们爬取了一个电商网站的商品信息,数据如下:

商品名称价格评论数上架日期
Apple iPhone 12$9992002023年1月1日
Samsung Galaxy S21价格缺失150
Xiaomi Mi 11$699评论缺失2023年3月5日
Sony Xperia 5$7991002023/05/10
OPPO Find X3价格错误502022-12-01

可以看到,爬取的数据包含以下问题:

  • 某些价格和评论数缺失。
  • 日期格式不一致。
  • 某些价格字段格式不正确。
  • “价格缺失”和“评论缺失”这样的非标准信息,需要转化为缺失值。

我们将基于这个数据集来演示清洗步骤。

4. 数据清洗步骤

4.1 将数据载入 Pandas DataFrame

将数据转换为 Pandas 的 DataFrame 格式,便于操作。

import pandas as pd# 创建示例数据
data = {'商品名称': ['Apple iPhone 12', 'Samsung Galaxy S21', 'Xiaomi Mi 11', 'Sony Xperia 5', 'OPPO Find X3'],'价格': ['$999', '价格缺失', '$699', '$799', '价格错误'],'评论数': [200, 150, '评论缺失', 100, 50],'上架日期': ['2023年1月1日', '无', '2023年3月5日', '2023/05/10', '2022-12-01']
}
df = pd.DataFrame(data)
print(df)

输出为:

           商品名称      价格   评论数        上架日期
0  Apple iPhone 12     $999     200     2023年1月1日
1 Samsung Galaxy S21 价格缺失     150            无
2    Xiaomi Mi 11     $699 评论缺失     2023年3月5日
3      Sony Xperia 5   $799     100   2023/05/10
4        OPPO Find X3 价格错误     50    2022-12-01

4.2 处理缺失值

缺失值可以通过删除行或填充方式处理。先将“价格缺失”和“评论缺失”字段转化为 Pandas 可识别的缺失值(NaN)。

import numpy as np# 将“价格缺失”、“评论缺失”转化为 NaN
df['价格'] = df['价格'].replace(['价格缺失', '价格错误'], np.nan)
df['评论数'] = df['评论数'].replace('评论缺失', np.nan)print(df)

4.3 清洗价格字段

价格字段中包含 $ 符号,并且类型为字符串。我们可以去除符号并将其转换为数值类型,以便后续分析。

# 去除 $ 符号并转换为浮点数
df['价格'] = df['价格'].str.replace('$', '').astype(float)
print(df)

4.4 处理日期格式

上架日期包含多种格式。可以使用 pd.to_datetime 函数进行格式统一化。

# 统一上架日期格式
df['上架日期'] = pd.to_datetime(df['上架日期'], errors='coerce')
print(df)

在这里,我们使用 errors='coerce' 选项来处理格式不正确的日期,例如“无”,会将其转换为缺失值。

4.5 填充缺失值

我们可以根据需求填充缺失值,例如将价格的缺失值替换为均值,或填入特定值。

# 用平均价格填充缺失值
df['价格'].fillna(df['价格'].mean(), inplace=True)# 填充评论数为 0
df['评论数'].fillna(0, inplace=True)print(df)

5. 数据存储

完成清洗后,数据可以存储到不同的文件格式中,方便后续分析和使用。常见的数据存储格式包括 CSV、Excel、SQL 数据库和 JSON。

5.1 保存为 CSV 文件

CSV 文件是数据存储的常用格式,适合小规模数据。

df.to_csv('cleaned_data.csv', index=False)

5.2 保存为 Excel 文件

如果数据需要进一步操作或供人查看,Excel 格式是不错的选择。

df.to_excel('cleaned_data.xlsx', index=False)

5.3 保存到 SQL 数据库

SQL 数据库更适合大规模数据,可以使用 SQLite、MySQL 等。以下是使用 SQLite 存储数据的示例:

import sqlite3# 连接 SQLite 数据库(若文件不存在会自动创建)
conn = sqlite3.connect('products.db')
df.to_sql('products', conn, if_exists='replace', index=False)
conn.close()

5.4 保存为 JSON 文件

JSON 文件常用于数据传输和存储,适合嵌套结构的数据。

df.to_json('cleaned_data.json', orient='records', force_ascii=False)

6. 数据清洗与存储的最佳实践

  • 格式统一:尽可能统一字段的格式,方便后续的处理和存储。
  • 处理缺失值:根据具体需求选择合适的填充策略。
  • 保留原始数据:清洗过程中可保留一份原始数据副本,便于溯源。
  • 数据量的选择:小规模数据可以存储为 CSV 或 Excel,大规模数据推荐存储到数据库。
  • 数据验证:清洗和存储后,检查数据的正确性,如统计均值、查看格式是否符合预期。

7. 小结

本文介绍了 Python 爬虫数据的清洗与存储方法,从处理缺失值、统一格式、清洗价格和日期等方面入手,并展示了如何将清洗后的数据保存为多种格式。通过掌握这些数据清洗和存储技巧,可以大幅提升爬虫数据的质量和可用性。

http://www.yayakq.cn/news/330983/

相关文章:

  • 河间市网站建设公司如何在手机上学编程
  • 个人网站开发赚钱方向python的基本语法
  • 百度找不到 网站怎么注册一个电商平台
  • 爱站官网中国建设银行东营分行网站
  • 个人网站做淘宝客容易封吗医院如何做网站策划?
  • 做视频网站怎么对接云盘古诗网页设计素材
  • 工业设计的网站深圳网站建设及推广服务公司
  • 做英文网站可以申请补贴吗民制作网站哪家便宜
  • 深圳企业网站建设服务公司怎么对一个产品进行网络营销
  • 小说网站开发流程具体wordpress后台404
  • 哪里 教做网站带维护宁夏找人做网站多少钱
  • 网站建设傲京东购物网站怎么做
  • 设计企业网站步骤域名购买服务商
  • 怎样建设国外网站安全的响应式网站建设
  • 百度云建设网站廊坊网站制作服务
  • 学生网站模板义务 网站建设
  • 公司建设网站制作微网站开发哪家好
  • 免费制作二维码的网站网站页面链接怎么做
  • 电子商务网站的建设方法二手车网站源码下载
  • 铁岭免费移动网站建设网站后台账号密码忘记了
  • 上海专业网站建设机构网站开发干啥的
  • 佛山免费发布信息的网站欧美网站设计欣赏
  • 网站设计需求说明书网页的基本布局包括什么
  • 网站系统繁忙是什么意思网页设计代码模板下载
  • 昆山做网站徐州地产开发公司招聘
  • 刘素云网站脱孝怎样做图片在线转外链
  • 网站数据库是什么意思深圳高端网站建设电话
  • php 茶叶网站建设发帖平台
  • 欧美模板网站建设佛山高端网站制作
  • 沈阳网站开发制作在线制作电子公章生成器