在mongodb中插入python对象

2023-11-21

各位, 我只是花了很多时间试图查找这个 - 我应该错过一些基本的东西。

我有一个 python 对象,我想做的就是将这个对象插入到 mondodb 中。

这就是我所拥有的:

from pymongo import Connection
import json

conn = Connection()
db = conn.cl_database
postings = db.postings_collection

class Posting(object):
    def __init__(self, link, found=None, expired=None):
        self.link = link
        self.found = found
        self.expired = expired

posting = Posting('objectlink1')
value = json.dumps(posting, default=lambda x:x.__dict__)
postings.insert(value)

抛出这个错误:

Traceback (most recent call last):
  File "./mongotry.py", line 21, in <module>
postings.insert(value)
  File "build/bdist.macosx-10.7-intel/egg/pymongo/collection.py", line 302, in insert
  File "build/bdist.macosx-10.7-intel/egg/pymongo/database.py", line 252, in _fix_incoming
  File "build/bdist.macosx-10.7-intel/egg/pymongo/son_manipulator.py", line 73, in transform_incoming
TypeError: 'str' object does not support item assignment

似乎是因为 json.dumps() 返回一个字符串。

现在,如果我在插入之前加载该值,它就可以正常工作:

posting = Posting('objectlink1')
value = json.dumps(posting, default=lambda x:x.__dict__)
value = json.loads(value)
postings.insert(value)

最直接的做法是什么?

Thanks!


What is value在你的初始代码中?

它应该是dict不是类实例

这应该有效:

postings.insert(posting.__dict__)
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

在mongodb中插入python对象 的相关文章

  • 使用不带引号的块样式的 Python YAML 转储

    如何使用 PyYAML 加载和转储 YAML 以便它尽可能地使用原始样式 我有 Python 来加载和转储 YAML 数据 例如 import sys import yaml def represent dictorder self dat
  • 搜索/替换 xml 内容

    我已经成功地使用 xml etree ElementTree 解析 xml 搜索内容 然后将其写入不同的 xml 然而 我只是处理单个标签内的文本 import os sys glob xml etree ElementTree as ET
  • 从 java 代码运行 Python 脚本

    这是我第一次在java中尝试python 我正在尝试从我的代码执行 python 脚本 如下所示 Process process Runtime getRuntime exec python C Users username Desktop
  • 有效 JSON 上的 Firefox JSON“格式不正确”错误

    我在 Firefox 中收到以下错误消息 Error not well formed Source File http school courses booking add php 1287657494723 Line 1 Column 1
  • 如果数据库关闭一段时间,MongoDB 会更改流超时

    我在nodejs中使用mongoDB更改流 一切正常 但如果数据库关闭需要超过10 5秒才能启动更改流会引发超时错误 这是我的更改流观察程序代码 Service prototype watcher function db let colle
  • 如何在 dash/plotly 中使用 iframe? (Python/HTML)

    我正在创建一个仪表板 我想使用这个交互式地图 网站链接 https www ons gov uk peoplepopulationandcommunity healthandsocialcare causesofdeath articles
  • 为什么 scikit-learn SVM.SVC() 非常慢?

    我尝试使用SVM分类器来训练大约10万个样本的数据 但我发现它非常慢 甚至两个小时后也没有任何反应 当数据集有大约 1k 个样本时 我可以立即得到结果 我还尝试了 SGDClassifier 和朴素贝叶斯 速度相当快 几分钟内就得到了结果
  • Plotly:如何在堆叠条形图顶部显示值的总和以及各个条形值?

    我正在尝试在 Python 中的 Plotly Express 中添加每个堆叠条形顶部的总计以及各个条形值 import plotly express as px df px data medals long fig px bar df x
  • Python 中没有名称属性的表单提交

    背景 在Python中使用urllib和urllib2 您可以进行表单提交 您首先创建一个字典 formdictionary search stackoverflow 然后使用 urllib 的 urlencode 方法来转换这个字典 pa
  • 如何在 Google App Engine (Python) 中定义配置变量/常量?

    我是 python GAE 的新手 想知道如何快速定义和使用全局设置变量 所以说你 git 克隆我的 GAE 应用程序 然后打开config yaml 添加更改设置 应用程序就全部连接起来 如下所示 config yaml or whate
  • 如何向 Jupyter (ipython) 笔记本自动添加扩展?

    我已经安装了扩展 calico document tools 我可以使用以下命令从 Jupyter 笔记本中加载它 javascript IPython load extensions calico document tools 如何为每个
  • 无法使用 Mongo 导出查询

    我有一个名为 sample 和名为 的数据库at 存在于 Mongodb 中 db sample find pretty id 35004 city ACMAR pop 6055 state AL id 35005 city ADAMSVI
  • 如何在Python中将N毫秒添加到日期时间

    我正在设置一个日期时间变量 fulldate datetime datetime strptime date time Y m d H M S f 其中日期和时间是适合日期时间性质的字符串 如何将此日期时间增加 N 毫秒 Use timed
  • 将 gtk.DrawingArea 保存到文件

    我想使用 PIL 将 gtk DrawingArea 对象内容保存到 jpeg 文件 我特别想添加这个脚本 http pygstdocs berlios de pygst tutorial webcam viewer html制作照片的可能
  • 折叠 numpy 数组除前两个维度之外的所有维度

    我有一个可变维度的 numpy 数组 例如它可以具有以下形状 64 64 64 64 2 5 64 64 40 64 64 10 20 4 我想要做的是 如果维数大于 3 我想将其他所有内容折叠 堆叠到第三维中 同时保留顺序 因此 在我上面
  • 抓取 Shopee API v4

    我有一个最终项目 其中我想要检索的数据是通过在shopee上抓取数据来获取的 但是当我在隐藏的API上抓取shopee时遇到问题 当我在Insomnia脚本上尝试时 脚本会运行 但是当我尝试时在本地或 google colab 脚本上 这是
  • 用于监视文件夹和更新数据库的 Python 守护进程

    这专门用于管理 MP3 文件 但它应该可以轻松地适用于任何包含大量文件的目录结构 我想找到或编写一个守护程序 最好用Python 来监视一个包含许多子文件夹的文件夹 这些子文件夹都应该包含X个MP3文件 每当添加 更新或删除文件时 它都应该
  • ValueError:序列太大;不能大于 32

    我写了这段代码 from Crypto Cipher import AES import numpy as np import cv2 base64 BLOCK SIZE 16 PADDING pad lambda s s BLOCK SI
  • Python pandas:向我的数据框中添加一列来计算变量

    我有一个像这样的数据框 gt org group org1 1 org2 1 org3 2 org4 3 org5 3 org6 3 我想将列 count 添加到 gt 数据帧以计算组的成员数量 预期结果如下 org group count
  • 如何限制单元测试的最大运行时间?

    我目前正在运行一些单元测试 这些测试可能需要很长时间才能失败或无限期地运行 在成功的测试运行中 它们总是会在一定的时间内完成 是否可以创建一个 pytest 单元测试 如果在一定时间内未完成 该测试就会失败 您可以安装 pytest tim

随机推荐

  • 在 F# 中,谁负责消息队列?

    在 F 中 如果我做类似的事情 让表单 新表单 文本 MyForm 在FSI中运行它 表单将正常显示和更新 甚至可以接收消息 然而 谁在泵送消息队列呢 这里没有 Application Run 调用 我有点困惑 正如 ildjarn 所说
  • CasperJS,使用测试框架并行浏览

    问题 我想知道是否可以进行并行浏览将测试框架放在一个脚本文件中 因此使用 tester 模块和 casperjs test 命令 我见过有些人创建了两个 casper 实例 CasperJS并发请求 and https groups goo
  • 使用 ShowDialog 和无边框窗口时,IsMouseOver 触发器不起作用

    我有两个Windows申请 其中之一是MainWindow另一个是设置 SettingsWindow单击设置按钮时打开ShowDialog并设置其Owner to MainWindow On the SettingsWindow我在窗口的最
  • Internet Explorer 11-出现安全证书错误提示问题

    我正在 IE11 中测试一个网站 它具有混合内容 http 和 https 在以前的版本中 会有一个提示询问我们应该允许安全证书错误的内容 但IE11中无此提示 站点崩溃 我尝试更改 高级选项 中的安全设置 但没有用 请建议 此行为与设置的
  • HTTP 响应有重定向,但没有往返?

    我希望浏览器反映除用于创建请求的 URL 之外的其他 URL 但无需往返服务器 我也许会这样做 POST form HTTP 1 1 然后返回 HTTP 1 1 200 OK Location hello 但这会导致重定向 浏览器将再次请求
  • 按值列表对查询结果排序

    我正在处理一个 sql 查询 它传递一个值列表作为参数 例如 select from ProductGroups where GroupID in 24 12 7 14 65 该列表由整个数据库中使用的关系构成 并且必须按此顺序保存 我想按
  • 关于让 xxhdpi 在 Android 模拟器中工作有什么建议吗?

    我尝试手动配置 AVD 以支持 xxhdpi 480 dpi 但是 Android 模拟器的最大支持 xhdpi 320 dpi 是的 文档说 xhdpi 可以扩展 但是 我希望看到它工作 我目前正在尝试从源代码构建 android 看看是
  • 角度指令 attrs.$observe

    我在网上找到了这个 Angular 指令来添加 Twitter 分享按钮 一切似乎都是显而易见的 但我不知道发生了什么attrs observe实际上正在做 我查看了文档但看不到 observe任何地方都可以引用 该指令似乎只是添加了hre
  • 如何检查线程是否位于同步块或方法内?

    我的 Java 应用程序使用两个线程 从历史上看 有同步方法和专用锁对象在使用 我需要知道当前线程是否有锁 以及它是通过方法还是对象 我怎样才能做到这一点 当进入同步方法时 VM 对当前对象设置锁 因此以下代码具有相同的效果 synchro
  • PostgreSQL UTF-8 二进制排序规则

    我想要一个排序规则 将 0x1234 的 UTF 8 编码排序为低于 0x1235 而不管 Unicode 标准中的字符映射如何 MySQL 为此使用 utf8 bin MSSQL 显然http msdn microsoft com en
  • 在Sql Server中将2个数字相除

    我正在进行 SQL Server 查询计算 除法总是给我零 SUM sl LINES ORDERED SUM sl LINES CONFIRMED SUM sl LINES CONFIRMED SUM sl LINES ORDERED AS
  • 使用 Azure WebJobs SDK 进行依赖注入?

    问题在于 Azure WebJobs SDK 仅支持公共静态方法作为作业入口点 这意味着无法实现构造函数 属性注入 我无法在官方 WebJobs SDK 文档 资源中找到有关此主题的任何内容 我遇到的唯一解决方案是基于这篇文章中描述的服务定
  • Chrome 失败错误代码

    I ve been searching for a while now and I can t find the exact list of all fail to load error code error description of
  • 正则表达式和匹配[关闭]

    这个问题不太可能对任何未来的访客有帮助 它只与一个较小的地理区域 一个特定的时间点或一个非常狭窄的情况相关 通常不适用于全世界的互联网受众 为了帮助使这个问题更广泛地适用 访问帮助中心 以下是 PHP 正则表达式示例的示例列表 也许这对某人
  • 如何在 JavaScript 中声明嵌套对象?

    我正在尝试创建一个包含对象的对象 因此将其视为字典 var dictionaries dictionaries english to french english hello french bonjour english i want fr
  • taskkill 和 taskkill /f 之间的区别

    On 微软技术网我可以读到taskkill has a f参数强制终止进程 我想知道这在内部做了什么 以了解这种行为的影响 taskkill 没有 f 不会简单地向进程发送 WM CLOSE 消息 否则我的应用程序会询问是否保存打开的文档
  • 在 Windows 上安装 Apache Spark 时没有名为“资源”的模块

    我正在尝试安装 apache Spark 以在我的 Windows 计算机上本地运行 我已遵循此处的所有说明https medium com loldja installing apache spark pyspark the missin
  • rmic还需要吗?

    java 1 5 或更高版本不需要 rmi 接口编译器 并且只编译使用 javac 定义 UnicastRemoteObject 的 java 文件就足够了吗 Rmic 仍然可以工作 如果您给它类文件 它会生成一个存根类文件远程对象的实现
  • HttpContent.ReadAsStringAsync 导致请求挂起(或其他奇怪的行为)

    我们正在构建一个高度并发的 Web 应用程序 最近我们开始广泛使用异步编程 使用 TPL 和async await 我们有一个分布式环境 其中应用程序通过 REST API 构建在 ASP NET Web API 之上 相互通信 在一个特定
  • 在mongodb中插入python对象

    各位 我只是花了很多时间试图查找这个 我应该错过一些基本的东西 我有一个 python 对象 我想做的就是将这个对象插入到 mondodb 中 这就是我所拥有的 from pymongo import Connection import j