安装 mongo模块

pip install pymongo

安装postgresql 驱动

pip install python-psycopg2 

1 # -*- coding: utf-8 -*- 2

 from pymongo import MongoClient
import datetime
import psycopg2 def get_db():
print('connect mongo...')
client=MongoClient('localhost',27017)
db=client.webdb
db.authenticate('jackical','****')
return db def get_collection():
print('start read table..')
db=get_db()
coll=db['table']
print(db.collection_names())
return coll.find({'pid':12,'did':45}) def get_pg():
print('read pg db')
conn=psycopg2.connect(database='jackical',user='postgres',password='******',host='localhost',port='')
cur=conn.cursor()
colles=get_collection()
pernumb=0
for i in colles:
searchKey=i['searchKey'] if 'searchKey' in i else ''
websiteType=i['websiteType'] if 'websiteType' in i else '' searchKey=searchKey.replace('\'','*_*')
websiteType=websiteType.replace('\'','*_*') persql='insert into public.myapp_res2(searchkey,websitetype) values(\'%s\',\'%s\')' % (searchKey,websiteType)
print(persql)
cur.execute(persql) pernumb=pernumb+1 if pernumb>1000:
conn.commit()
pernumb=0 if pernumb>0:
conn.commit()
cur.close()
conn.close()
print('insert end') if __name__=='__main__':
get_pg()

代码中

i['searchKey'] if 'searchKey' in i else '' 

为mongo中有没有 "searchKey" 这列,有的话就显示,没有的话就为 ''

为保证入库正常,所以直接将 ‘ 单引号替换成 *_* ,取数据时,再换回来。

												

python脚本 mongodb到postgresql的更多相关文章

  1. Python 操作 MongoDB

    原文 这篇文章主要介绍了使用Python脚本操作MongoDB的教程,MongoDB作为非关系型数据库得到了很大的宣传力度,而市面上的教程一般都是讲解JavaScript的脚本操作,本文则是基于Pyt ...

  2. Python与Mongodb交互

    MongoDB 是由C++语言编写的,是一个基于分布式文件存储的开源数据库系统 MongoDB 旨在为WEB应用提供可扩展的高性能数据存储解决方案 MongoDB 将数据存储为一个文档,数据结构由键值 ...

  3. python操作三大主流数据库(10)python操作mongodb数据库④mongodb新闻项目实战

    python操作mongodb数据库④mongodb新闻项目实战 参考文档:http://flask-mongoengine.readthedocs.io/en/latest/ 目录: [root@n ...

  4. 【转】Python操作MongoDB

    Python 操作 MongoDB   请给作者点赞--> 原文链接 这篇文章主要介绍了使用Python脚本操作MongoDB的教程,MongoDB作为非关系型数据库得到了很大的宣传力度,而市面 ...

  5. JSON 的正确用法:Python、MongoDB、JavaScript与AjaxJSON 的正确用法:Python、MongoDB、JavaScript与Ajax

    本文主要总结网站编写以来在传递 JSON 数据方面遇到的一些问题以及目前采用的解决方案.网站数据库采用 MongoDB,后端是 Python,前端采用“半分离”形式的 Riot.js,所谓半分离,是说 ...

  6. python爬虫27 | 当Python遇到MongoDB的时候,存储av女优的数据变得如此顺滑爽~

    上次 我们知道了怎么操作 MySQL 数据库 python爬虫26 | 把数据爬取下来之后就存储到你的MySQL数据库. MySQL 有些年头了 开源又成熟又牛逼 所以现在很多企业都在使用 MySQL ...

  7. Python连接MongoDB数据库并执行操作

    原文:https://blog.51cto.com/1767340368/2092813 环境设置: [root@mongodb ~]# cat /etc/redhat-release CentOS ...

  8. celery 分布式异步任务框架(celery简单使用、celery多任务结构、celery定时任务、celery计划任务、celery在Django项目中使用Python脚本调用Django环境)

    一.celery简介: Celery 是一个强大的 分布式任务队列 的 异步处理框架,它可以让任务的执行完全脱离主程序,甚至可以被分配到其他主机上运行.我们通常使用它来实现异步任务(async tas ...

  9. MongoDB与RoboMongo的安装+python基本操作MongoDB

        MongoDB(来自于英文单词“Humongous”,中文含义为“庞大”)是可以应用于各种规模的企业.各个行业以及各类应用程序的开源数据库.作为一个适用于敏捷开发的数据库,MongoDB的数据 ...

随机推荐

  1. 贴现率d与利率i

    一.复利中的实际利率 it=(1+i)t -(1+i)t-1  /   (1+i)t-1=i i 为常数, 而单利的实际利率递减 二.贴现 时间t的1元在时间零点的价值为贴现函数 记为 a-1(t) ...

  2. Java日志系统

    前言 各组件之间的关系: slf4j是The Simple Logging Facade for Java的简称,是一个简单日志门面抽象框架,它本身只提供了日志Facade API和一个简单的日志类实 ...

  3. ANT table表格合并

      1.    合并前提 后台返回数据必须是:相同重复的数据必须是连在一起的,这样前台才能通过rowspan方法合并表格数据.(这是前提,后台需要注意) 2.步骤 1.前台需要根据后台返回的数据内容, ...

  4. 51nod 1832 先序遍历与后序遍历【二叉树+高精度】

    题目链接:51nod 1832 先序遍历与后序遍历 基准时间限制:1 秒 空间限制:131072 KB 分值: 40 难度:4级算法题 对于给定的一个二叉树的先序遍历和后序遍历,输出有多少种满足条件的 ...

  5. Django 导出csv文件 中文乱码问题

    import csvimport codecsimport datetimefrom django.db import connectionfrom django.contrib.auth.model ...

  6. sqlite3如何退出...>状态

    一般是进入SQL数据语言模式了,此时要想退出...>状态,只要输入一条完整的SQL语句就行了,也就是末尾要加上:(分号)这个符号就可以退回到sqlite>状态

  7. crm动态载入js库

    function load_script(url) {     var xmlHTTPRequest;     if (window.ActiveXObject) {         xmlHTTPR ...

  8. ThinkPHP中前台输出变量

    1.   foreach <foreach name="list" item="vo" > {$key}|{$vo.id}:{$vo.name} & ...

  9. 小BAT解决大麻烦_某卡教室控制软件

    @echo off mode con cols= lines= if "%1" == "h" goto begin mshta vbscript:)(windo ...

  10. C语言中内存分配

     C语言中内存分配   在任何程序设计环境及语言中,内存管理都十分重要.在目前的计算机系统或嵌入式系统中,内存资源仍然是有限的.因此在程序设计中,有效地管理内存资源是程序员首先考虑的问题. 第1节主要 ...