将带有 商店idr 商品信息的json导入到mongodb后,能不能根据商店id把所有商品全部提取并转为电子表格

当您已经将包含商店ID(如realMallId)的商品信息导入MongoDB后,确实可以轻松地根据商店ID提取所有相关商品信息并转换为电子表格(例如Excel)。这里是一个简化的流程,使用Python的pymongo库来查询MongoDB,并使用pandas库将查询结果转换为电子表格:

步骤 1: 安装必要的Python库

确保已安装pymongo和pandas库。如果未安装,可以通过pip安装:

pip install pymongo pandas openpyxl

步骤 2: 编写脚本提取并导出数据

import pandas as pd
from pymongo import MongoClient

# MongoDB连接设置
MONGO_URI = "mongodb://localhost:27017/"
DATABASE_NAME = "YourDatabaseName"
COLLECTION_NAME = "YourCollectionName"  # 假设商品信息存放在此集合中

# 目标商店ID
TARGET_MALL_ID = 823190385

def fetch_goods_by_mall_id(mongo_uri, db_name, collection_name, target_mall_id):
    # 连接到MongoDB
    client = MongoClient(mongo_uri)
    db = client[db_name]
    collection = db[collection_name]

    # 查询指定商店ID的所有商品
    query = {"realMallId": target_mall_id}
    goods = list(collection.find(query))

    # 关闭MongoDB连接
    client.close()

    return goods

def goods_to_dataframe(goods_list):
    """Convert list of goods to DataFrame."""
    # 确保所有商品数据结构一致,以便转换为DataFrame
    df = pd.DataFrame(goods_list)
    return df

def export_to_excel(df, filename="goods_list.xlsx"):
    """Export DataFrame to Excel."""
    df.to_excel(filename, index=False)
    print(f"Data exported to {filename}")

if __name__ == "__main__":
    # 获取指定商店ID的商品信息
    goods_data = fetch_goods_by_mall_id(MONGO_URI, DATABASE_NAME, COLLECTION_NAME, TARGET_MALL_ID)

    # 转换为DataFrame
    goods_df = goods_to_dataframe(goods_data)

    # 导出至Excel
    export_to_excel(goods_df)

这段脚本首先连接到MongoDB数据库,根据指定的realMallId查询商品信息,然后将查询结果转换为Pandas DataFrame,最后将DataFrame导出为Excel文件。请根据实际情况替换MONGO_URI、DATABASE_NAME、COLLECTION_NAME以及TARGET_MALL_ID的值。

相关推荐
库库林_沙琪马1 小时前
Redis 持久化:从零到掌握
数据库·redis·缓存
牵牛老人2 小时前
Qt中使用QPdfWriter类结合QPainter类绘制并输出PDF文件
数据库·qt·pdf
卡西里弗斯奥4 小时前
【达梦数据库】dblink连接[SqlServer/Mysql]报错处理
数据库·mysql·sqlserver·达梦
温柔小胖5 小时前
sql注入之python脚本进行时间盲注和布尔盲注
数据库·sql·网络安全
杨俊杰-YJ5 小时前
MySQL 主从复制原理及其工作过程
数据库·mysql
一个儒雅随和的男子6 小时前
MySQL的聚簇索引与非聚簇索引
数据库·mysql
V+zmm101348 小时前
基于微信小程序的家政服务预约系统的设计与实现(php论文源码调试讲解)
java·数据库·微信小程序·小程序·毕业设计
roman_日积跬步-终至千里8 小时前
【分布式理论14】分布式数据库存储:分表分库、主从复制与数据扩容策略
数据库·分布式
hadage2338 小时前
--- Mysql事务 ---
数据库·mysql
-$_$-9 小时前
【黑马点评优化】2-Canel实现多级缓存(Redis+Caffeine)同步
数据库·redis·缓存