Skip to content

Instantly share code, notes, and snippets.

@grimpy
Last active March 13, 2020 16:36
Show Gist options
  • Save grimpy/a8be59f8fec6712f7b81a714b026aca3 to your computer and use it in GitHub Desktop.
Save grimpy/a8be59f8fec6712f7b81a714b026aca3 to your computer and use it in GitHub Desktop.
from pymongo import MongoClient
import json
import argparse
def main():
parser = argparse.ArgumentParser()
parser.add_argument("--con1")
parser.add_argument("--con2")
parser.add_argument("--collection")
parser.add_argument("--database")
parser.add_argument("--query", default="{}")
parser.add_argument("--dry", action="store_true", default=False)
options = parser.parse_args()
mongo1 = options.con1
mongo2 = options.con2
collection = options.collection
q = json.loads(options.query)
mc1 = MongoClient(mongo1)
mc2 = MongoClient(mongo2)
db1 = mc1[options.database]
db2 = mc2[options.database]
col1 = db1[collection]
col2 = db2[collection]
data = list(col1.find(q))
print(data)
if not options.dry:
if data:
col2.insert(data)
if __name__ == "__main__":
main()
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment