加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > Python > 正文

python操作MongoDB基础知识

发布时间:2020-12-16 20:45:55 所属栏目:Python 来源:网络整理
导读:首先运行easy_install pymongo命令安装pymongo驱动。然后执行操作: 创建连接 复制代码 代码如下: In [1]: import pymongo In [2]: connection = pymongo.Connection('localhost',27017) 切换到数据库malware 复制代码 代码如下: In [3]: db = connection.ma

首先运行easy_install pymongo命令安装pymongo驱动。然后执行操作:
创建连接

复制代码 代码如下:

In [1]: import pymongo
In [2]: connection = pymongo.Connection('localhost',27017)

切换到数据库malware
复制代码 代码如下:

In [3]: db = connection.malware

获取collection
复制代码 代码如下:

 In [4]: collection = db.malware

注意:db和collection都是延时创建的,在添加Document时才真正创建Document添加,_id会自动创建
复制代码 代码如下:

In [6]: post = {"name":"a.privacy.GingerMaster.a","family":"GingMaster","category":"隐私窃取","behavior":"非法获取手机root权限,强制开机自启动、强制联网、窃 取并上传用户手机中的IMEI、IMSI、SIM卡信息等隐私内容,还会将病毒组件伪装成PNG图片,从后台静默下载、安装恶意软件,消耗用户流量"}

In [7]: malinfo = db.posts

In [9]: malinfo.insert(post)
Out[9]: ObjectId('52727c5b3387e31671aa91b1')


获取所有collection(相当于SQL的show tables)
复制代码 代码如下:

In [10]: db.collection_names()
 Out[10]: [u'system.indexes',u'posts']

获取单个文档
复制代码 代码如下:

In [11]: malinfo.find_one()
Out[11]:
{u'_id': ObjectId('52727c5b3387e31671aa91b1'),
 u'behavior': u'u975eu6cd5u83b7u53d6u624bu673arootu6743u9650uff0cu5f3au5236u5f00u673au81eau542fu52a8u3001u5f3au5236u8054u7f51u3001u7a83u53d6u5e76u4e0au4f20u7528u6237u624bu673au4e2du7684IMEIu3001IMSIu3001SIMu5361u4fe1u606fu7b49u9690u79c1u5185u5bb9uff0cu8fd8u4f1au5c06u75c5u6bd2u7ec4u4ef6u4f2au88c5u6210PNGu56feu7247uff0cu4eceu540eu53f0u9759u9ed8u4e0bu8f7du3001u5b89u88c5u6076u610fu8f6fu4ef6uff0cu6d88u8017u7528u6237u6d41u91cf',
 u'category': u'u9690u79c1u7a83u53d6',
 u'family': u'GingMaster',
 u'name': u'a.privacy.GingerMaster.a'}

批量插入
复制代码 代码如下:

In [12]: new_posts = [{"name":"a.payment.FakeInst.a","family":"FakeInst","category":"恶意扣费","behavior":"后台发送扣费短信"},{"name":"a.payment.Umeng.a","family":"Umeng","behavior":"1. 后台从服务器端获取指令, 自动发送短信,订制扣费服务,并拦截指定号码短信。 2. 后台从服务器端获取指令,自动模拟访问广告,消耗用户流量"}]

In [13]: malinfo.insert(new_posts)
Out[13]: [ObjectId('527281323387e31671aa91b2'),ObjectId('527281323387e31671aa91b3')]


获取所有collection(相当于SQL的show tables)
复制代码 代码如下:

In [14]: db.collection_names()
Out[14]: [u'system.indexes',u'posts'] 

查询多个文档
复制代码 代码如下:

In [18]: for info in malinfo.find():
   ....:     print info
   ....:    
{u'category': u'u9690u79c1u7a83u53d6',u'_id': ObjectId('52727c5b3387e31671aa91b1'),u'name': u'a.privacy.GingerMaster.a',u'family': u'GingMaster',u'behavior': u'u975eu6cd5u83b7u53d6u624bu673arootu6743u9650uff0cu5f3au5236u5f00u673au81eau542fu52a8u3001u5f3au5236u8054u7f51u3001u7a83u53d6u5e76u4e0au4f20u7528u6237u624bu673au4e2du7684IMEIu3001IMSIu3001SIMu5361u4fe1u606fu7b49u9690u79c1u5185u5bb9uff0cu8fd8u4f1au5c06u75c5u6bd2u7ec4u4ef6u4f2au88c5u6210PNGu56feu7247uff0cu4eceu540eu53f0u9759u9ed8u4e0bu8f7du3001u5b89u88c5u6076u610fu8f6fu4ef6uff0cu6d88u8017u7528u6237u6d41u91cf'}
{u'category': u'u6076u610fu6263u8d39',u'_id': ObjectId('527281323387e31671aa91b2'),u'name': u'a.payment.FakeInst.a',u'family': u'FakeInst',u'behavior': u'u540eu53f0u53d1u9001u6263u8d39u77edu4fe1'}
{u'category': u'u6076u610fu6263u8d39',u'_id': ObjectId('527281323387e31671aa91b3'),u'name': u'a.payment.Umeng.a',u'family': u'Umeng',u'behavior': u'1. u540eu53f0u4eceu670du52a1u5668u7aefu83b7u53d6u6307u4ee4uff0cu81eau52a8u53d1u9001u77edu4fe1uff0cu8ba2u5236u6263u8d39u670du52a1uff0cu5e76u62e6u622au6307u5b9au53f7u7801u77edu4fe1u3002 2. u540eu53f0u4eceu670du52a1u5668u7aefu83b7u53d6u6307u4ee4uff0cu81eau52a8u6a21u62dfu8bbfu95eeu5e7fu544auff0cu6d88u8017u7528u6237u6d41u91cf'}

加条件的查询
复制代码 代码如下:

In [19]: malinfo.find_one({"family":"FakeInst"})
Out[19]:
{u'_id': ObjectId('527281323387e31671aa91b2'),
 u'behavior': u'u540eu53f0u53d1u9001u6263u8d39u77edu4fe1',
 u'category': u'u6076u610fu6263u8d39',
 u'family': u'FakeInst',
 u'name': u'a.payment.FakeInst.a'}

统计数量
复制代码 代码如下:

In [20]: malinfo.count()
Out[20]: 3

 

您可能感兴趣的文章:

  • python从网络读取图片并直接进行处理的方法
  • Python读取图片EXIF信息类库介绍和使用实例
  • Python读取图片属性信息的实现方法
  • python使用opencv读取图片的实例
  • Python读取图片为16进制表示简单代码
  • Python实现将数据框数据写入mongodb及mysql数据库的方法
  • python监控linux内存并写入mongodb(推荐)
  • python连接mongodb操作数据示例(mongodb数据库配置类)
  • Python中的MongoDB基本操作:连接、查询实例
  • python实现爬虫数据存到 MongoDB
  • Python实现批量读取图片并存入mongodb数据库的方法示例

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读