91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

python3 爬蟲如何保存數據

小樊
81
2024-11-28 10:10:44
欄目: 編程語言

在Python3中,我們可以使用多種庫來保存爬取到的數據。以下是一些建議的庫和方法:

  1. SQLite3:SQLite3是Python內置的數據庫庫,可以用來存儲爬取到的數據。首先,你需要創建一個數據庫和一個表,然后插入數據,最后查詢和更新數據。
import sqlite3

# 創建數據庫連接
conn = sqlite3.connect('example.db')
cursor = conn.cursor()

# 創建表
cursor.execute('''CREATE TABLE IF NOT EXISTS data (
                    id INTEGER PRIMARY KEY AUTOINCREMENT,
                    title TEXT NOT NULL,
                    url TEXT NOT NULL)''')

# 插入數據
def insert_data(title, url):
    cursor.execute("INSERT INTO data (title, url) VALUES (?, ?)", (title, url))
    conn.commit()

# 查詢數據
def query_data():
    cursor.execute("SELECT * FROM data")
    return cursor.fetchall()

# 更新數據
def update_data(id, title, url):
    cursor.execute("UPDATE data SET title = ?, url = ? WHERE id = ?", (title, url, id))
    conn.commit()

# 關閉數據庫連接
conn.close()
  1. JSON:JSON是一種輕量級的數據交換格式,易于閱讀和編寫。你可以將爬取到的數據保存為JSON文件,以便于后續處理和分析。
import json

data = [
    {"title": "Title 1", "url": "https://example.com/1"},
    {"title": "Title 2", "url": "https://example.com/2"},
]

# 保存為JSON文件
with open('data.json', 'w') as f:
    json.dump(data, f)
  1. CSV:CSV(逗號分隔值)是一種常見的表格數據格式。你可以將爬取到的數據保存為CSV文件,以便于后續處理和分析。
import csv

data = [
    {"title": "Title 1", "url": "https://example.com/1"},
    {"title": "Title 2", "url": "https://example.com/2"},
]

# 保存為CSV文件
with open('data.csv', 'w', newline='', encoding='utf-8') as f:
    writer = csv.DictWriter(f, fieldnames=["title", "url"])
    writer.writeheader()
    for row in data:
        writer.writerow(row)
  1. MongoDB:MongoDB是一個NoSQL數據庫,可以用來存儲爬取到的數據。首先,你需要安裝PyMongo庫(pip install pymongo),然后連接到MongoDB數據庫,插入數據,查詢和更新數據。
from pymongo import MongoClient

# 創建數據庫連接
client = MongoClient('mongodb://localhost:27017/')
db = client['example_db']
collection = db['data']

# 插入數據
def insert_data(title, url):
    collection.insert_one({"title": title, "url": url})

# 查詢數據
def query_data():
    return collection.find()

# 更新數據
def update_data(id, title, url):
    collection.update_one({"_id": id}, {"$set": {"title": title, "url": url}})

# 關閉數據庫連接
client.close()

根據你的需求和數據類型,可以選擇合適的庫和方法來保存爬取到的數據。

0
汉源县| 桃源县| 陆河县| 兴仁县| 金堂县| 南召县| 彩票| 贵州省| 永泰县| 兴化市| 理塘县| 安远县| 三原县| 黔江区| 正镶白旗| 富宁县| 旬阳县| 寿宁县| 吉木萨尔县| 涿鹿县| 杭州市| 衡山县| 马尔康县| 紫阳县| 青海省| 天津市| 延庆县| 昔阳县| 海原县| 仪陇县| 绥阳县| 黄冈市| 江山市| 师宗县| 揭西县| 晋江市| 牡丹江市| 曲阳县| 隆回县| 通道| 安陆市|