Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/mongodb/12.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用RobotFramework Mongodb库在RobotFramework中查询Mongodb的isodate/datetime_Mongodb_Datetime_Robotframework_Isodate - Fatal编程技术网

使用RobotFramework Mongodb库在RobotFramework中查询Mongodb的isodate/datetime

使用RobotFramework Mongodb库在RobotFramework中查询Mongodb的isodate/datetime,mongodb,datetime,robotframework,isodate,Mongodb,Datetime,Robotframework,Isodate,我使用Robotframework中的Robotframework MongoDB库,使用python3.7(通过pip3安装的rf版本3.1.2)自动化一些MongoDB测试。我已经设法让RF连接到Mongodb并运行了一些基本测试,如: Connect To MongoDB ${MDBHost} ${MDBPort} @{allCollections} Get MongoDB Collections mydbname Log Many @{allCollections}

我使用Robotframework中的Robotframework MongoDB库,使用python3.7(通过pip3安装的rf版本3.1.2)自动化一些MongoDB测试。我已经设法让RF连接到Mongodb并运行了一些基本测试,如:

Connect To MongoDB    ${MDBHost}    ${MDBPort}
@{allCollections}   Get MongoDB Collections mydbname
Log Many    @{allCollections}
但是,我需要根据如下日期进行一些查询

${all_results}  Retrieve Some MongoDB Records   ivoox  impressionsByProgram   {"d" : ISODate("2019-09-30T22:00:00.000Z")}
这将导致“JSONDecodeError:期望值:第1行第8列(字符7)”。为了寻找答案,蒙古图书馆似乎在使用PyMongo,我需要使用datetime而不是Isodate,但我得到了相同的错误:

 ${all_results}  Retrieve Some MongoDB Records   ivoox  impressionsByProgram   {"d" : datetime(2019,30,1)}
JSONDecodeError:应为值:第1行第8列(字符7)

进一步的搜索指出我是否安装了Bson,但我已经验证了我是否按照正确的顺序安装了模块,在这两种情况下,首先是Bson,然后是通过pip3安装的PyMongo

蒙古图书馆也使用pip3安装


有什么想法吗?快速浏览代码会发现不支持BSON date所需的类型转换。该库似乎几乎没有维护,而且似乎是个人多年前添加的一项小工作。将呈现的JSON转换为底层驱动程序的有效“Python”表达式的正确方法是使用pymongo发行版中的模块。你可以自己修补它。@NeilLunn,这个库在年被分叉并更新为python3,但基本上就是这个库。它是RobotFramework中处理Mongo的“官方”库,这就是我使用它的原因。不幸的是,我不擅长python来修补库;射频测试不需要很高的编码技能