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

溫馨提示×

python數據爬蟲如何進行數據存儲

小樊
81
2024-11-26 17:04:32
欄目: 云計算

在Python中進行數據爬蟲并將數據存儲起來,通常有以下幾種方法:

  1. 保存到文件

    • CSV文件:使用csv模塊將數據寫入CSV文件。
      import csv
      data = [['Name', 'Age'], ['Alice', 25], ['Bob', 30]]
      with open('output.csv', 'w', newline='', encoding='utf-8') as file:
          writer = csv.writer(file)
          writer.writerows(data)
      
    • JSON文件:使用json模塊將數據寫入JSON文件。
      import json
      data = {'Name': 'Alice', 'Age': 25}
      with open('output.json', 'w', encoding='utf-8') as file:
          json.dump(data, file, ensure_ascii=False, indent=4)
      
    • 文本文件:將數據寫入純文本文件。
      data = 'Alice,25\nBob,30'
      with open('output.txt', 'w', encoding='utf-8') as file:
          file.write(data)
      
  2. 保存到數據庫

    • SQLite:使用sqlite3模塊將數據存儲到SQLite數據庫。
      import sqlite3
      conn = sqlite3.connect('example.db')
      cursor = conn.cursor()
      cursor.execute('''CREATE TABLE IF NOT EXISTS users (name TEXT, age INTEGER)''')
      data = [('Alice', 25), ('Bob', 30)]
      cursor.executemany('INSERT INTO users VALUES (?, ?)', data)
      conn.commit()
      conn.close()
      
    • MySQL:使用mysql-connector-pythonpymysql模塊將數據存儲到MySQL數據庫。
      import mysql.connector
      conn = mysql.connector.connect(
          host='localhost',
          user='yourusername',
          password='yourpassword',
          database='mydatabase'
      )
      cursor = conn.cursor()
      cursor.execute('''CREATE TABLE IF NOT EXISTS users (name VARCHAR(255), age INT)''')
      data = [('Alice', 25), ('Bob', 30)]
      cursor.executemany('INSERT INTO users VALUES (%s, %s)', data)
      conn.commit()
      conn.close()
      
    • PostgreSQL:使用psycopg2模塊將數據存儲到PostgreSQL數據庫。
      import psycopg2
      conn = psycopg2.connect(
          host='localhost',
          user='yourusername',
          password='yourpassword',
          database='mydatabase'
      )
      cursor = conn.cursor()
      cursor.execute('''CREATE TABLE IF NOT EXISTS users (name VARCHAR(255), age INT)''')
      data = [('Alice', 25), ('Bob', 30)]
      cursor.executemany('INSERT INTO users VALUES (%s, %s)', data)
      conn.commit()
      conn.close()
      
  3. 保存到文件系統

    • JSON Lines:將數據逐行寫入JSON文件。
      import json
      data = [{'Name': 'Alice', 'Age': 25}, {'Name': 'Bob', 'Age': 30}]
      with open('output.jsonl', 'w', encoding='utf-8') as file:
          for item in data:
              file.write(json.dumps(item) + '\n')
      
    • Pickle:使用pickle模塊將數據序列化后保存到文件。
      import pickle
      data = {'Name': 'Alice', 'Age': 25}
      with open('output.pkl', 'wb') as file:
          pickle.dump(data, file)
      
  4. 保存到緩存

    • Redis:使用redis-py模塊將數據存儲到Redis緩存。
      import redis
      r = redis.Redis(host='localhost', port=6379, db=0)
      data = {'Name': 'Alice', 'Age': 25}
      r.set('user:1', json.dumps(data))
      

選擇哪種存儲方式取決于你的具體需求,例如數據量大小、是否需要快速訪問、是否需要跨系統共享等。

0
卢龙县| 陵水| 略阳县| 铜鼓县| 泸水县| 乾安县| 湖州市| 巴彦淖尔市| 庄河市| 时尚| 新乡县| 丰城市| 连山| 大渡口区| 厦门市| 吉木乃县| 凤冈县| 临西县| 雷山县| 东宁县| 长沙县| 平乐县| 宁陕县| 南郑县| 博湖县| 云林县| 嘉黎县| 谢通门县| 乐东| 陆良县| 新乡县| 鹤峰县| 丹阳市| 酉阳| 曲阜市| 花莲县| 汝阳县| 巴彦县| 云林县| 镇平县| 嘉黎县|