[PYTHON] Transformez le fichier CSV local en feuille de calcul Google

Données CSV locales vers Google SpreadSheet Je voulais le donner exactement, alors j'ai fait un script pour cela.

Voici une brève introduction et un exemple de script

Activez l'API Google Sheets

Reportez-vous ici https://developers.google.com/sheets/api/quickstart/python#step_1_turn_on_the_api_name

Installer la bibliothèque cliente Google

Reportez-vous ici https://developers.google.com/sheets/api/quickstart/python#step_2_install_the_google_client_library

Créer une fonction pour l'authentification

Laissez le get_credentials ici https://developers.google.com/sheets/api/quickstart/python#step_3_set_up_the_sample

Cependant, concernant SCOPE, nous le modifierons, alors changez-le ensuite https: // www.googleapis.com / auth / drive

échantillon

--Une fonction qui prend un fichier CSV, en fait un élément pour chaque ligne et le met dans une liste

def csv2rows(csv_name):
    df = pd.read_csv(csv_name, index_col=False)
    rows = []
    for index, row in df.iterrows():
        values = []
        for c in row:
            values.append({'userEnteredValue': {'stringValue': str(c)}})
        rows.append({'values': values})
    return rows
sheet_index = 1
requests = []

rows =  csv2rows('aaa.csv', header=None)
sheet_title = 'aaa'
sheet_id = sheet_index
requests.append(
    { #Créer une feuille
      'addSheet': {
        'properties': {
          'title': sheet_title,
          'index': 0,
          'sheetId': sheet_id
        }
      }
    }
)
requests.append(
    { #Mettre à jour avec le contenu du csv qui a acquis la feuille créée
        'updateCells': {
          'start': {
            'sheetId': sheet_id,
            'rowIndex': 0,
            'columnIndex': 0
          },
          'rows': rows,
          'fields': 'userEnteredValue'
        }
    }
)

credentials = get_credentials()
http = credentials.authorize(httplib2.Http())
discoveryUrl = ('https://sheets.googleapis.com/$discovery/rest?version=v4')
service = discovery.build('sheets', 'v4', http=http, discoveryServiceUrl=discoveryUrl)

spreadsheet_id = '${Tout SpreadSheetId}'

batch_update_spreadsheet_request_body = {
  'requests': requests
}

#Exécution de la demande
result = service.spreadsheets() \
                          .batchUpdate(spreadsheetId=spreadsheet_id, body=batch_update_spreadsheet_request_body) \
                          .execute()

Recommended Posts

Transformez le fichier CSV local en feuille de calcul Google
Que faire pour obtenir une feuille de calcul Google en Python
Écrire en csv avec Python
Convertissez rapidement SDF en CSV
Comment utiliser Google Colaboratory