将带有 商店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的值。

相关推荐
IpdataCloud6 分钟前
电商防刷单:如何用IP风险识别工具拦截虚假交易?实操指南
数据库
m0_7407963610 分钟前
golang如何实现工作流引擎_golang工作流引擎实现要点
jvm·数据库·python
m0_6530313611 分钟前
Oracle OCP19C 报名考试流程
数据库·oracle·ocp报名·ocp考试流程
Irene199117 分钟前
一张表 没有走索引扫描,原因有哪些(回表成本)
数据库
六月雨滴17 分钟前
Oracle 参数文件管理
数据库·oracle·dba
zhaoyong22230 分钟前
CSS如何利用Less构建高度自定义组件_通过样式作用域防止冲突与溢出
jvm·数据库·python
2301_7815714234 分钟前
Less如何优化CSS文件大小_利用压缩配置去除冗余样式
jvm·数据库·python
2401_8676239834 分钟前
Next.js 13 中为嵌套客户端组件实现局部加载状态的正确方法
jvm·数据库·python
weixin_444012931 小时前
CSS Flex布局中如何实现导航栏与Logo的左右分布_利用justify-content- space-between
jvm·数据库·python
彳亍1011 小时前
Less如何优化CSS文件大小_利用压缩配置去除冗余样式
jvm·数据库·python