def act_toggle(environ, start_response): conn = mongo('192.168.48.128',27017) db = conn['test-database'] coll = db['test-collection'] qs = urlparse.parse_qs(environ['QUERY_STRING']) url = '' status = '' #print qs if 'name' in qs: name = qs['name'][0] if 'status' in qs: status = qs['status'][0] #print 'Status ======== %s ' % status if status == 'y': new_status = 'n' else: new_status = 'y' session = environ['beaker.session'] if 'user' in session: user = session['user'] #print new_status, name, user query = {'user': user, 'Name' : name} stmt = {'$set' : {'act_stat': new_status}} #print query, stmt curr = coll.update(query ,stmt) #print curr start_response('302 Found',[('Location','/list')]) return ['1'] else: start_response('302 Found',[('Location','/?e=session_invalid')]) return ['1']
def dataIntoMongoDB(appetizers): cluster = mongo( "mongodb+srv://Janhavi:[email protected]/test?retryWrites=true&w=majority" ) db = cluster.ProjectDB col = db.Appetizers Veg = {'category': 'Veg', 'recipes': []} Non_Veg = {'category': 'Non-Veg', 'recipes': []} col.insert_one(Veg) col.insert_one(Non_Veg) for recipe in appetizers['Veg']: recipe['_id'] = bson.objectid.ObjectId() col.update_one({'category': 'Veg'}, {'$push': {'recipes': recipe}}) for recipe in appetizers['Non-Veg']: recipe['_id'] = bson.objectid.ObjectId() col.update_one({'category': 'Non-Veg'}, {'$push': {'recipes': recipe}})
def insert_db(item_details): import pymongo from pymongo import MongoClient as mongo client = mongo('192.168.48.128',27017) db = client['test-database'] coll = db['test-collection'] print item_details['title'] original = coll.find_one({'Name' : item_details['title']}) doc = {} doc['Name'] = item_details['title'] all = string.maketrans('','') onlyalpha = all.translate(all, string.letters +' ') doc['Availability'] = ' '.join(item_details['avail'].encode('utf8').translate(all, onlyalpha).split(' ')) #doc['Price'] = [] doc['url'] = item_details['url'] doc['user'] = item_details['user'] doc['Price'] = item_details['price'] doc['rating'] = item_details['rating'] doc['act_stat'] = item_details['act_stat'] if original is not None: original['_id'] = '' if original['Price'] == doc['Price']: print "Price is same" return None, None else: print '===================',original['Price'] print '====================', doc['Price'] import copy doc2 = copy.copy(doc) coll.update({'Name':item_details['title']},{'$set' : {'Price' : item_details['price']}}) return original, doc2 else: import copy doc2 = copy.copy(doc) #print doc2 coll.insert(doc) return None, doc2
# print('code: ', code) # 평점, 리뷰, 날짜 수집을 위해 현재 브라우저를 iframe 전환 browser.switch_to.frame('pointAfterListIframe') browser.implicitly_wait(3) logger.info('iframe 전환') # 최신순 클릭 tag_latest_a = browser.find_element_by_css_selector( '#orderCheckbox > ul.sorting_list > li:nth-child(2) > a') tag_latest_a.click() browser.implicitly_wait(3) logger.info('최신순 클릭') # MongoDB 접속, DB, collection 선택 conn = mongo('mongodb://*****:*****@192.168.50.82:27017/kny') db = conn.get_database('kny') collection = db.get_collection('movies1') # 현재 페이지 설정 page_num = 1 while True: logger.info('세번째 while 시작') try: # page 클릭 page_id = 'pagerTagAnchor' + str(page_num) page_btn = browser.find_element_by_id(page_id) page_btn.click() browser.implicitly_wait(3)
import pymongo import os import random import sys import math from pymongo import MongoClient as mongo cluster = mongo(os.environ["MONGO_LAB"]) containers = cluster['Containers'] inventories = containers["Inventories"] dependancies = cluster['Database'] values = dependancies['Values'] injectors = dependancies["Injectors"] max_slots = 37 max_slot_size = 64 probs = [# qty prob pick break time ['Dirt', 33, 10, 0, 0.5], ['Gravel', 33, 8, 0, 0.6], ['Granite', 33, 10, 1, 1.5], ['Diorite', 33, 10, 1, 1.5], ['Andesite', 33, 10, 1, 1.5], ['Coal Ore', 17, 20, 2, 3], ['Iron Ore', 9, 20, 2, 3], ['Redstone Ore', 8, 8, 3, 3],
import os import sys import json import pymongo from pymongo import MongoClient as mongo id = str(sys.argv[1]) cluster = mongo(os.environ["MONGOLAB_URL"]) containers = cluster['Containers'] inventories = containers["Inventories"] dependancies = cluster['Database'] values = dependancies['Values'] injectors = dependancies["Injectors"] inventory = {} userList = values.find_one({"_id": "UserList"}) if userList == None: values.insert_one({"_id": "UserList"}) userList = values.find_one({"_id": "UserList"}) if id in userList: pre_existance = True else: pre_existance = False values.update_one({"_id": "UserList"}, {"$set": {id: None}}, upsert=True) if pre_existance == True:
browser.switch_to.frame('pointAfterListIframe') browser.implicitly_wait(3) # logger.info('iframe 전환') # 최신순 클릭 tag_latest_a = browser.find_element_by_css_selector( '#orderCheckbox > ul.sorting_list > li:nth-child(2) > a') tag_latest_a.click() browser.implicitly_wait(3) # logger.info('최신순 클릭') # MongoDB 접속, DB 선택, Collection 선택 # conn = mongo('mongodb://*****:*****@192.168.50.82:27017/kkm') # db = conn.get_database('kkm') # collection = db.get_collection('movies_score') conn = mongo('mongodb://*****:*****@192.168.50.82:27017') db = conn.get_database('kkm') collection = db.get_collection('movies_score') # client = MongoClient() # 클래스 객체 할당 # client = MongoClient('192.168.50.82', 27017) # localhost: ip주소 # 27017: port 번호 # DB_HOST = '192.168.50.82:27017' # DB_ID = 'kkm' # DB_PW = '1234' # client = MongoClient('mongodb://%s:%s@%s' % (DB_ID, DB_PW, DB_HOST))
logger.info('영화 제목 : %s' % title) # 평점, 리뷰, 날짜 수집을 위해 현재 브라우저를 iframe 페이지로 전환 browser.switch_to.frame('pointAfterListIframe') browser.implicitly_wait(3) logger.info('iframe 전환') # 최신순 클릭 tag_latest_a = browser.find_element_by_css_selector('#orderCheckbox > ul.sorting_list > li:nth-child(2) > a') tag_latest_a.click() browser.implicitly_wait(3) logger.info('최신순 클릭') #MongoDB 접속, DB, Collection 선택 conn = mongo('mongodb://*****:*****@192.168.50.82:27017/lth') db = conn.get_database('lth') collection = db.get_collection('movies') #현재 페이지 설정 page_num = 1 while True: try: # page 클릭 page_id = 'pagerTagAnchor'+str(page_num) page_btn = browser.find_element_by_id(page_id) page_btn.click() browser.implicitly_wait(3) logger.info('현재 페이지 : %d' % page_num)
""" date: 2020/07/16 name: kang content : 파이썬 몽고 db 실습하기 """ from pymongo import MongoClient as mongo from datetime import datetime as dt #mongodb 접속 conn = mongo('mongodb://*****:*****@192.168.100.101:27017') #db 선택 db = conn.get_database('krg') #컬렉션 조회 collections = db.list_collection_names() #print(collections) #컬렉션(테이블) 선택 collection = db.get_collection('member') #데이터 insert people = [{ 'uid': 'A103', 'name': '장보고', 'hp': '010-1234-3333', 'pos': '대리', 'dep': 103, 'rdate': dt.now() }, { 'uid': 'A104', 'name': '강감찬',
def list(environ, start_response): user = '' url ='' session = environ['beaker.session'] # #print session['user'] if 'user' in session: user = session['user'] response_body = list_html #print type(environ) #Check the Request method if environ['REQUEST_METHOD'] == 'POST': env_copy = environ.copy() env_copy['QUERY_STRING'] = '' #above statment due to bug in field storage as data = cgi.FieldStorage(fp = environ['wsgi.input'], environ = env_copy, keep_blank_values = 1) if user == '': user = data.getvalue('email') #if no user is set in session then new user will be read url = data.getvalue('url') elif environ['REQUEST_METHOD'] == 'GET': qs = urlparse.parse_qs(environ['QUERY_STRING']) #print environ['QUERY_STRING'] if 'email' in qs: user = qs['email'][0] if 'url' in qs: url = qs['url'][0] if 'act_toggle' in qs: act_toggle = qs['act_toggle'][0] #print user, url if user == '': #check session #post request for invalid session start_response('302 Found',[('Location','/?e=session_invalid')]) #urllib.pathname2url('/e=session_invalid')),('Content-type','application/x-www-form-urlencoded')]) return ['1'] elif user != '' and url != '': if 'user' not in session: session['user'] = user session.save() #print "Session Set! as " + session['user'] #print 'Setting up the alert' amazon_item.main(user,url) elif user != '' and url == '': if 'user' not in session: session['user'] = user session.save() #print "Session Set! as " + session['user'] from pymongo import MongoClient as mongo conn = mongo('192.168.48.128',27017) db = conn['test-database'] coll = db['test-collection'] res_cur = coll.find({'user' : user}) list_text = "" if res_cur is None: list_text = "No registered Products" else: # list_text = list_text + 'Heroooooooooo' p_name, p_url, p_stat = ' ', ' ', ' ' for item in res_cur: if 'Name' in item: p_name = item['Name'].encode('utf8') if 'url' in item: p_url = item['url'].encode('utf8') if 'act_stat' in item: p_stat = item['act_stat'].encode('utf8') query = urllib.urlencode({'name': p_name, 'status': p_stat}) #print query list_text = list_text + """<tr><td>""" + p_name + """</td><td>Visit the product <a href = """ + p_url + """> here </a> </td><td><a href=/act_toggle?""" + query + """>"""+ p_stat + """ </td></tr>""" response_body = list_html % list_text #print response_body response_headers = [ ('Content-Type','text/html'), ('Content-Length', str(len(response_body))) ] start_response('200 OK', response_headers) return [response_body]
def con_mongo_sh(self): return mongo("101.251.97.145", 27017)['bermuda']
def con_mongo_bj(self): return mongo("223.202.52.134", 27017)['bermuda']
def connect_mongo(ip, port): client = mongo(ip, port) dbase = client.prkl return dbase
#!/usr/bin/env python import subprocess from pymongo import MongoClient as mongo import amazon_item conn = mongo('192.168.48.128', 27017) db = conn['test-database'] coll = db['test-collection'] null = None curr = coll.find({'act_stat': 'y', 'user': {'$not': {'$eq': null}}}) for item in curr: user = item['user'].encode('utf8') url = item['url'].encode('utf8') print "Running Script for %s and %s" % (user, url) try: amazon_item.main(user, url) except Exception as e: print "Error Occurred :::::::::::::::::::::::::::::::::::::::::::::::::::: \n"
#---------------------------------------------------------# # Libraries # #---------------------------------------------------------# import sys import pymongo from pymongo import MongoClient as mongo #---------------------------------------------------------# # Dependancies # #---------------------------------------------------------# id = sys.argv[1] global cluster = mongo(os.environ["MONGO_URL"]) #Same as process.env.MONGO_URL global db = cluster.plexi_users global player = db.id global dependancies = db.Dependancies global numOfEntities = len(dependancies.find_one({"_id": "entityIDs"},)) #---------------------------------------------------------# # Functions # #---------------------------------------------------------# def getQty(item): playerInv = player.find_one({"_id": "inventory"}) invQty = 0 for slot in playerInv: if slot == "isEmpty":
from pymongo import MongoClient as mongo import bson cluster = mongo( "mongodb+srv://Janhavi:[email protected]/test?retryWrites=true&w=majority" ) db = cluster.ProjectDB col = db.Search # Appetizers - Veg # colAppetizer = db.Appetizers # vegAppetizers = colAppetizer.find_one({'category':'Veg'}) # vegRecipes = vegAppetizers['recipes'] # for recipe in vegRecipes: # item = dict() # print(recipe['recipe_name']) # nutritionFacts = recipe['nutrition_facts'] # print(nutritionFacts['calories']) # item['recipe_name'] = recipe['recipe_name'] # item['calories'] = recipe['nutrition_facts']['calories'] # item['category'] = 'Veg' # item['collection'] = 'Appetizers' # item['_id'] = bson.objectid.ObjectId() # col.insert_one(item) # colAppetizer = db.Appetizers # nonvegAppetizers = colAppetizer.find_one({'category':'Non-Veg'}) # nonvegRecipes = nonvegAppetizers['recipes'] # for recipe in nonvegRecipes: # item = dict() # print(recipe['recipe_name'])
def connect_db(url): client = mongo(url) return client
print(title) # iframe 전환 browser.switch_to.frame('pointAfterListIframe') browser.implicitly_wait(3) logger.info('iframe 전환') # 최신순 클릭 tag_latest_a = browser.find_element_by_css_selector( '#orderCheckbox > ul.sorting_list > li:nth-child(2) > a') tag_latest_a.click() browser.implicitly_wait(3) logger.info('최신순 클릭') # MongoDB 접속, DB, collection 선택 conn = mongo('mongodb://*****:*****@192.168.50.82:27017/kdw') # conn = mongo('mongodb://*****:*****@192.168.100.101:27017') db = conn.get_database('kdw') collection = db.get_collection('movies') # 현재 페이지 설정 page_num = 1 while True: try: # page 클릭 page_id = 'pagerTagAnchor' + str(page_num) page_btn = browser.find_element_by_id(page_id) page_btn.click() browser.implicitly_wait(3)
""" 날짜 : 2020/07/16 이름 : 주하림 내용 : 파이썬 MongoDB 실습하기 """ from pymongo import MongoClient as mongo from datetime import datetime as dt #mongodb 접속 conn = mongo('mongodb://*****:*****@192.168.100.101:27017') #db선택 db = conn.get_database('chhak') #컬렉션 조회 collections = db.list_collection_names() #print(collections) #컬렉션(테이블) 선택 collection = db.get_collection('member') #데이터 insert people = [{ 'uid': 'A103', 'name': '장보고', 'hp': '010-1234-3333', 'pos': '대리', 'dep': 103, 'rdate': dt.now() }, { 'uid': 'A104',
# Delete the file that does not exist on the dropbox account from the mongo database def removefromdb(): for doc in filestore.find({}): if str(doc['name']) not in names: filestore.remove({"name": str(doc['name'])}) # Authenticate to dropbox account try: dbx = db.Dropbox(sys.argv[1]) except db.exceptions.ApiError: print("connection failure !") # Creation of mongodb client try: client = mongo() except pymongo.errors.OperationFailure: print("client creation failure !") #Creation of a database and collection db = client.database filestore = db.files # Do the job while 1: names = [] for entry in dbx.files_list_folder(sys.argv[2]).entries: try: meta = dbx.files_alpha_get_metadata(sys.argv[2] + entry.name) except db.exceptions.ApiError: print("not found !")
logger.info('영화 제목 : %s' % title) # 평점, 리뷰, 날짜 수집을 위해 현재 브라우저를 iframe 페이지로 전환 browser.switch_to.frame('pointAfterListIframe') browser.implicitly_wait(3) logger.info('iframe 전환') # 최신순 클릭 tag_latest_a = browser.find_element_by_css_selector( '#orderCheckbox > ul.sorting_list > li:nth-child(2) > a') tag_latest_a.click() browser.implicitly_wait(3) logger.info('최신순 클릭') #MongoDB 접속, DB, Collection 선택 conn = mongo('mongodb://*****:*****@192.168.50.82:27017/cjh') db = conn.get_database('cjh') collection = db.get_collection('movies') #현재 페이지 설정 page_num = 1 while True: try: # page 클릭 page_id = 'pagerTagAnchor' + str(page_num) page_btn = browser.find_element_by_id(page_id) page_btn.click() browser.implicitly_wait(3) logger.info('현재 페이지 : %d' % page_num)