Python爬虫怎样保存爬取结果_Python爬虫将数据保存为文件或数据库的方法

答案:python爬虫数据可保存为CSV、jsON、excel或存入mysql、MongoDB。小数据用CSV/json,分析选Excel,长期结构化存储用MySQL,非结构化数据选mongodb,注意编码与异常处理。

Python爬虫怎样保存爬取结果_Python爬虫将数据保存为文件或数据库的方法

Python爬虫在抓取网页数据后,通常需要将结果保存下来以便后续分析或使用。常见的保存方式包括保存为本地文件(如CSV、JSON、Excel)或存储到数据库中(如MySQL、MongoDB)。下面介绍几种实用且常用的方法。

保存为CSV文件

CSV是一种简单通用的表格数据格式,适合结构化数据的存储,可用Excel打开,也便于用pandas处理。

示例代码:

import csv
data = [
  {“name”: “张三”, “age”: 25, “city”: “北京”},
  {“name”: “李四”, “age”: 30, “city”: “上海”}
]

with open(“data.csv”, “w”, encoding=”utf-8″, newline="") as f:
  writer = csv.DictWriter(f, fieldnames=data[0].keys())
  writer.writeheader() # 写入表头
  writer.writerows(data) # 写入多行数据

注意:使用newline=""避免空行问题,编码设为utf-8支持中文。

保存为JSON文件

JSON适合保存嵌套结构或非结构化数据,常用于网页API返回的数据存储。

立即学习Python免费学习笔记(深入)”;

示例代码:

import json

with open(“data.json“, “w”, encoding=”utf-8″) as f:
  json.dump(data, f, ensure_ascii=False, indent=2)

ensure_ascii=False确保中文正常显示,indent=2美化格式。

保存到Excel文件

使用pandas库可轻松导出为Excel(.xlsx),适合需要图表或多人查看的场景。

示例代码:

import pandas as pd

df = pd.DataFrame(data)
df.to_excel(“data.xlsx”, index=False)

需提前安装:pip install pandas openpyxl

Python爬虫怎样保存爬取结果_Python爬虫将数据保存为文件或数据库的方法

存了个图

视频图片解析/字幕/剪辑,视频高清保存/图片源图提取

Python爬虫怎样保存爬取结果_Python爬虫将数据保存为文件或数据库的方法 17

查看详情 Python爬虫怎样保存爬取结果_Python爬虫将数据保存为文件或数据库的方法

保存到MySQL数据库

适用于大量数据长期存储,支持复杂查询。

示例代码:

import pymysql

conn = pymysql.connect(
  host=”localhost”,
  user=”root”,
  password=”your_password”,
  database=”test_db”,
  charset=”utf8mb4″
)
cursor = conn.cursor()

sql = “INSERT INTO users (name, age, city) VALUES (%s, %s, %s)”
for item in data:
  cursor.execute(sql, (item[“name”], item[“age”], item[“city”]))
conn.commit()
conn.close()

需安装:pip install PyMySQL

保存到MongoDB

MongoDB适合存储不固定结构的爬取数据,比如网页详情页内容差异较大时。

示例代码:

from pymongo import MongoClient

client = MongoClient(“mongodb://localhost:27017/”)
db = client[“scrapy_db”]
Collection = db[“users”]

collection.insert_many(data)

插入单条可用insert_one()。安装命令:pip install pymongo

基本上就这些。根据数据量和用途选择合适的方式:小数据用CSV或JSON,分析用Excel,长期结构化存储选MySQL,灵活文档型数据选MongoDB。不复杂但容易忽略编码和异常处理,建议加上try-except保障稳定性。

上一篇
下一篇
text=ZqhQzanResources