Exemplo n.º 1
0
def load_burial_set_geocode(collection):
    with MyMongo() as db:
        # cemetry = list(db.find('burial', 'cemetry', {'lat': {'$exists': False}}))
        burial = list(
            db.find('burial', collection, {'lat': {
                '$exists': False
            }}))

    # print(cemetry[1])
    # print(enshrinement)

    queries = []
    for doc in burial:
        address = get_geocode_from_address(doc['주소'], None, doc['시설명'])
        if type(address) == str:
            print('Address Not Found.')
            print(doc['주소'], doc['시설명'])
            continue

        # lat, lng = address['y'], address['x']
        doc['lat'] = address['y']
        doc['lng'] = address['x']
        doc['filter0'] = address.get('region_1depth_name')
        doc['filter1'] = address.get('region_2depth_name')
        doc['filter2'] = address.get('region_3depth_name')

        queries.append(
            UpdateOne({'_id': doc['_id']}, {'$set': doc}, upsert=True))

        if len(queries) == 20:
            with MyMongo() as db:
                obj = db.get_table_obj('burial', collection)
                result = obj.bulk_write(queries)
                print_bulk_result(result)
                queries.clear()

    with MyMongo() as db:
        obj = db.get_table_obj('burial', collection)
        result = obj.bulk_write(queries)
        print_bulk_result(result)
        queries.clear()
Exemplo n.º 2
0
def load_market_set_geocode(schema, collection):
    with MyMongo() as db:
        # parking = list(db.find('market', collection, {'위도': '0.000'}))
        docs = list(db.find(schema, collection, {'위도': np.nan}))

    # print(cemetry[1])
    # print(enshrinement)

    queries = []
    for doc in docs:
        address = get_geocode_from_address(str(doc['소재지도로명주소']), None,
                                           str(doc['시장명']))
        if type(address) == str:
            print('Address Not Found.')
            print(doc['소재지도로명주소'], doc['시장명'])
            continue

        # lat, lng = address['y'], address['x']
        doc['위도'] = address['y']
        doc['경도'] = address['x']
        doc['filter0'] = address.get('region_1depth_name')
        doc['filter1'] = address.get('region_2depth_name')
        doc['filter2'] = address.get('region_3depth_name')

        queries.append(
            UpdateOne({'_id': doc['_id']}, {'$set': doc}, upsert=True))

        if len(queries) == 20:
            with MyMongo() as db:
                obj = db.get_table_obj(schema, collection)
                result = obj.bulk_write(queries)
                print_bulk_result(result)
                queries.clear()

    with MyMongo() as db:
        obj = db.get_table_obj(schema, collection)
        result = obj.bulk_write(queries)
        print_bulk_result(result)
        queries.clear()
Exemplo n.º 3
0
for i, s in enumerate(schools):
    if s.find('부산') == -1:
        s = '부산 ' + s
        # print(i)
        # print('부산 ' + s)
    if len(s) >= 7 and (s[-2] in ['남', '여']):
        s2.append(s)
        continue
    if s.endswith('초') or s.endswith('고'):
        s = s + '등학교'
    elif s.endswith('중'):
        s = s + '학교'
    s2.append(s)

# print(s2)
print(len(schools))
print(len(s2))

addresses = ['대전 중구 보문산공원로 469']

result = ''
for idx, addr in enumerate(addresses):
    address = get_geocode_from_address(addr, None, '부산 ' + s2[idx])
    # print(address)
    try:
        result += address['y'] + '\t' + address['x'] + '\n'
    except TypeError:
        print(address)
print(result)

Exemplo n.º 4
0
directory_path = '/Users/jake/OneDrive - leverage innovative users/Documents/편의점/'
file_name = 'cvs_all.tsv'
file_path = directory_path + file_name

#%%
cvs_all = pd.read_csv(file_path, sep='\t', dtype=object)
#%%
print(f'Len: {len(cvs_all)}')
print(f'Columns: {cvs_all.columns}')

#%%
tmp = cvs_all.iloc[0]
tmp

#%%
doc = get_geocode_from_address(tmp['도로명전체주소'], None, tmp['사업장명'])
doc

#%%

i = 0
for idx, row in cvs_all.iterrows():
    if i == 10:
        break
    i += 1
    doc = get_geocode_from_address(row['도로명전체주소'], None, row['사업장명'])
    if doc:
        cvs_all.at[idx, 'lat'] = doc['y']
        cvs_all.at[idx, 'lng'] = doc['x']

#%%