[PYTHON] Konvertieren Sie eine Tabelle in CSV und laden Sie sie mit Cloud-Funktionen in den Cloud-Speicher hoch

Ziel

Exportieren Sie nach Erreichen des API-Endpunkts die Daten einer bestimmten Tabelle in CSV und speichern Sie sie im Speicher.

Was zu verwenden

Verfahren

1. Veröffentlichen Sie die Tabelle als Webanwendung

Wählen Sie in der Tabellenkalkulationssymbolleiste Extras-> <> Skripteditor "aus, um den Google Apps-Skripteditor zu öffnen. screenshot-script.google.com-2020.05.14-18_55_28.png

Löschen Sie den vorhandenen Code und fügen Sie den folgenden Code ein.

Code.gs


function doGet(e) {
  var output = ContentService.createTextOutput(createCSV());
  output.setMimeType(ContentService.MimeType.TEXT);
  return output;
}

function createCSV() {
  var sheetName = 'Blattname';
  var ss = SpreadsheetApp.getActiveSpreadsheet();
  var sheet = ss.getSheetByName(sheetName);
  var values = sheet.getDataRange().getValues();
  var csv = values.join('\n');
  return csv;
}

Klicken Sie in der Symbolleiste auf "Veröffentlichen" -> "Als Webanwendung einführen ...".

Sie werden nach dem Projektnamen gefragt. Geben Sie ihm einen geeigneten Namen und klicken Sie auf "OK".

Sie werden nach den Einstellungen gefragt. Setzen Sie "App ausführen als:" auf "Ich (E-Mail-Adresse)" und "Wer hat Zugriff auf die App:" auf "Jeder, auch anonym" und klicken Sie auf "Bereitstellen". screenshot-script.google.com-2020.05.14-18_46_39.png

Der folgende Bildschirm wird angezeigt. Wenn Sie auf die unter "Aktuelle Web-App-URL" beschriebene URL zugreifen und die Tabellenkalkulationsdaten im CSV-Format angezeigt werden, ist dies erfolgreich. screenshot-script.google.com-2020.05.14-18_50_52.png

Notieren Sie sich diese URL, da Sie sie später verwenden werden.

2. Erteilen Sie Cloud Storage die Berechtigung zum Erstellen von Objekten

Öffnen Sie "Dienstkonto" unter "IAM und Administration" und klicken Sie auf "Dienstkonto erstellen", um ein Dienstkonto zu erstellen.

Öffnen Sie den Speicher und klicken Sie auf Bucket erstellen, um einen Bucket zu erstellen.

Klicken Sie im Bildschirm mit der Bucket-Liste im Menü rechts neben dem Bucket auf "Bucket-Berechtigungen bearbeiten" -> "Mitglied hinzufügen".

Fügen Sie das soeben erstellte Dienstkonto dem neuen Mitglied hinzu, wählen Sie die Rolle aus, wählen Sie Cloud-Speicher → Speicherobjektadministrator aus und klicken Sie auf Speichern.

screenshot-console.cloud.google.com-2020.05.14-19_42_16.png

3. Platzieren Sie ein Skript zum Hochladen von CSV in Cloud-Funktionen

Öffnen Sie die Cloud-Funktionen und klicken Sie auf Funktion erstellen.

Aktivieren Sie "Nicht autorisierte Anrufe zulassen".

screenshot-console.cloud.google.com-2020.05.14-19_50_20.png

Wählen Sie zur Laufzeit Python 3.7 aus. Fügen Sie den folgenden Code in "MAIN.PY" und "REQUIREMENT.TXT" ein.

main.py


import sys
import csv
import codecs
import requests
import os
import tempfile

from google.cloud import storage


def main(request):
    # Spreadsheet Web application URL
    url = '1.URL angezeigt in'

    # Cloud Storage
    bucket = 'Eimername'
    dir = 'Richtungsname'
    fileName = 'CSV-Name'

    # get data
    r = requests.get(url)
    assert r.status_code == requests.codes.ok, "can't read spreadsheet"  # pylint: disable=no-member

    # make file
    _, temp_local_filename = tempfile.mkstemp()
    with codecs.open(temp_local_filename, 'w', 'utf_8') as f:
        f.write(r.text)

    # upload file
    client = storage.Client()
    bucket = client.get_bucket(bucket)
    blob = bucket.blob(f'{dir}/{fileName}')
    blob.upload_from_filename(filename=temp_local_filename)
    return "success"

REQUIREMENT>TXT


astroid==2.4.0
autopep8==1.5.2
cachetools==4.1.0
certifi==2020.4.5.1
chardet==3.0.4
colorama==0.4.3
google-api-core==1.17.0
google-auth==1.14.1
google-cloud==0.34.0
google-cloud-core==1.3.0
google-cloud-storage==1.28.0
google-resumable-media==0.5.0
googleapis-common-protos==1.51.0
idna==2.9
isort==4.3.21
lazy-object-proxy==1.4.3
mccabe==0.6.1
protobuf==3.11.3
pyasn1==0.4.8
pyasn1-modules==0.2.8
pycodestyle==2.5.0
pylint==2.5.0
pytz==2020.1
requests==2.23.0
rsa==4.0
six==1.14.0
toml==0.10.0
urllib3==1.25.9
wrapt==1.12.1

Setzen Sie "Auszuführende Funktion" auf "Haupt" und klicken Sie auf "Erstellen".

screenshot-console.cloud.google.com-2020.05.14-19_51_28.png

Klicken Sie danach auf den Funktionsnamen → klicken Sie auf die auf der Registerkarte "Trigger" angegebene URL. Die CSV wird ausgeschrieben und ist erfolgreich.

Referenz

Recommended Posts

Konvertieren Sie eine Tabelle in CSV und laden Sie sie mit Cloud-Funktionen in den Cloud-Speicher hoch
GAE - Drehen Sie mit Python das Bild basierend auf den Rotationsinformationen von EXIF und laden Sie es in den Cloud-Speicher hoch.
Lesen Sie die CSV-Datei mit Python und konvertieren Sie sie unverändert in DataFrame
Cloud-Funktionen zum Ändern der Bildgröße mithilfe von OpenCV mit Cloud Storage-Trigger
Hochladen von Dateien in den Cloud-Speicher mit dem Python-SDK von Firebase
Laden Sie Dateien mit Django-Speicher in Google Cloud Storages hoch und löschen Sie sie
Konvertieren Sie das Ergebnis von Python Optparse, um es zu diktieren und zu verwenden
Laden Sie Dateien in den Cloud Storage (GCS) von GCP hoch. ~ Laden Sie mit lokalem Python
Verarbeiten Sie die mit Redshift entladene gzip-Datei mit Python of Lambda, gzipen Sie sie erneut und laden Sie sie in S3 hoch
Konvertieren Sie mit pdfplumber von PDF in CSV
[memo] Senden Sie Tabelleninformationen mit BigQuery Schedule und Cloud-Funktionen an GCS
Scraping der veröffentlichten CSV mit Github Action und Veröffentlichung auf Github Pages
Extrahieren Sie das Ergebnis des TOP-Befehls mit USER und geben Sie es als CSV aus
Mit ReportingAPI + Cloud-Funktionen können Sie die Anzahl der Besuche auf jeder Seite ermitteln
Konvertieren Sie Dateien, die mit Cloud-Funktionen (Python) in den Cloud-Speicher hochgeladen wurden, so, dass sie in Excel nicht verstümmelt werden
Laden Sie Daten mit einem Befehl und einer Aktualisierung auf s3 von aws hoch und löschen Sie die verwendeten Daten (unterwegs).
Kratzen Sie das Essen mit Python und geben Sie es an CSV aus
Schaben Sie den Holojour ab und zeigen Sie ihn in der CLI an
DICOM zu PNG Konvertierung mit aufsteigend und absteigend
Ich habe das Stempeln von Job Can mit Selen automatisiert und in Google Cloud Functions bereitgestellt, aber es war ziemlich schwierig
Konvertieren Sie XLSX in CSV in der Befehlszeile
Konvertieren der cURL-API in ein Python-Skript (mithilfe des IBM Cloud-Objektspeichers)
Lesen Sie die CSV-Datei mit dem Jupiter-Notizbuch und schreiben Sie die Grafik übereinander
Es ist einfach, SQL mit Python auszuführen und das Ergebnis in Excel auszugeben
Ich habe versucht, eine CSV-Datei mit Python zu berühren
Lesen Sie die CSV-Datei und zeigen Sie sie im Browser an
Konvertieren Sie das Bild in .zip mit Python in PDF
So konvertieren Sie eine JSON-Datei mit Python Pandas in eine CSV-Datei
POST das Bild mit json und erhalte es mit der Flasche
Konvertieren Sie 202003 bis 2020-03 mit Pandas
POST das ausgewählte Bild auf der Website mit mehrteiligen / Formulardaten und speichere es in Amazon S3! !!
Rufen Sie die Excel-Liste rekursiv in einem bestimmten Ordner mit Python ab und schreiben Sie sie in Excel.
Geben Sie die Bilddaten mit Flask of Python zurück und zeichnen Sie sie in das Canvas-Element von HTML
[Python / Ruby] Mit Code verstehen Wie man Daten aus dem Internet abruft und in CSV schreibt
Vorsichtsmaßnahmen bei der Eingabe von CSV mit Python und der Ausgabe an json, um exe zu erstellen
[Python] Ändern Sie die Cache-Steuerung von Objekten, die in den Cloud-Speicher hochgeladen wurden
Einfache Verwendung der Nifty Cloud API mit Botocore und Python
[Python] Lesen Sie die CSV-Datei und zeigen Sie die Abbildung mit matplotlib an
Konvertieren Sie verstümmelte gescannte Bilder mit Pillow und PyPDF in PDF
Wie man Youtube in MP3 konvertiert und es super sicher herunterlädt [Python]
Batch-Konvertierung aller XLSX-Dateien im Ordner in CSV-Dateien
"Tiefe Kopie" und "flache Kopie", um mit dem kleinsten Beispiel zu verstehen
Konvertieren Sie Videos mit ffmpeg + python + opencv in Schwarzweiß
So laden Sie Dateien mit Python in den Cloud-Speicher hoch [Erstellen Sie mit Raspberry PI # 1 eine Festkommakamera]
Konvertieren Sie Wetterdaten im GRIB2-Format, die mit pygrib nicht geöffnet werden können, in netCDF und visualisieren Sie sie
[Python] Was ist Pip? Erläutern Sie die Befehlsliste und deren Verwendung anhand aktueller Beispiele
Ich habe versucht, die Google-API mit Ruby und Python zu erreichen. Machen Sie die Datenbank zu einer Tabelle und verwalten Sie sie mit Google Drive
Ich habe zum ersten Mal versucht, mit DynamoDB und Step Functions eine serverlose Stapelverarbeitung zu erstellen
Verschrotten Sie die Liste der Go To EAT-Mitgliedsgeschäfte in der Präfektur Fukuoka und konvertieren Sie sie in CSV
Verschrotten Sie die Liste der Go To EAT-Mitgliedsspeicher in der Präfektur Niigata und konvertieren Sie sie in CSV
Laden Sie Dateien mit SDK (Python-Version) auf Aspera hoch, das mit IBM Cloud Object Storage (ICOS) geliefert wird.
Schreiben Sie mit Python in csv
Konvertieren Sie SDF schnell in CSV
Bestimmen Sie das Datums- und Uhrzeitformat mit Python und konvertieren Sie es in Unixtime
Aktiviert, um PNG mit Pillow of Python in JPG zu konvertieren
Wiederholen Sie mit While. Skript zum Twittern oder Suchen vom Terminal aus
So installieren Sie OpenCV in Cloud9 und führen es in Python aus
Konvertieren Sie nach dem Aufrufen der Shell-Datei unter Python CSV in Parkett.