0

Simplegeoストレージに.csvファイルをロードする簡単な方法はありますか?私は優れたコーディングスキルを持っていません。フリーランサーにアプリのマップを作成するよう依頼できるように、準備を整えようとしています。誰かがこれを行うための既存のコードを持っている場合、私はおそらくそれを私の状況で機能させる方法を理解することができます。

4

1 に答える 1

0

APIをざっと見ました。これがPythonの基本的な例です

想定されるcsv形式:

layer, id, lat, lon

Python

from simplegeo.models import Record, Client

lines = open('file.csv').split('\n')
client = Client('your-oauth-token', 'your-oauth-secret')

for line in lines:
    parts = line.split(',')
    if len(parts) == 4:
        layer = parts[0].strip()
        id = parts[1].strip()
        lat = float(parts[2].strip())
        lon = float(parts[3].strip())
        r = Record(layer, id, lat, lon)
        client.storage.add_record(r)

もう少し掘り下げた後、私はこの正確な目的のために彼らのサイトでPythonの例を見つけました https://simplegeo.com/docs/tutorials/general-hackery#how-import-csv-file-simplegeo

import csv
import simplegeo

OAUTH_TOKEN = '[insert_oauth_token_here]'
OAUTH_SECRET = '[insert_oauth_secret_here]'
CSV_FILE = '[insert_csv_file_here]'
LAYER = '[insert_layer_name_here]'

client = simplegeo.Client(OAUTH_TOKEN, OAUTH_SECRET)

def insert(data):
    layer = LAYER
    id=data.pop("id")
    lat=data.pop("latitude")
    lon=data.pop("longitude")
    # Grab more columns if you wish
    record = simplegeo.Record(layer,id,lat,lon,**data)
    client.add_record(record)

r = csv.DictReader(open(CSV_FILE, mode='U'))
for l in r:
    insert(l)
于 2011-08-04T00:24:09.493 に答える