Laden Sie Dateien mit SDK (Python-Version) auf Aspera hoch, das mit IBM Cloud Object Storage (ICOS) geliefert wird.

So laden Sie eine Datei in IBM Cloud Object Storage (ICOS) hoch. Dieses Mal werden wir Aspera, das mit ICOS geliefert wird, mit der Python-Version des SDK betreiben.

Umgebung verwendet

3er ist in Ordnung, aber derzeit unterstützt das SDK nur bis zu 3.6, also habe ich mit 2er Serie nachgesehen.

Einrichten des SDK für Python

Bitte richten Sie hier ein. GitHub:IBM-Cloud/data-lake/upload/cos-upload

Führen Sie nach dem Einrichten von pip install.sh, Für die Windows-Version habe ich den Inhalt der Datei direkt kopiert und den Befehl ausgeführt.

install.sh


pip install --upgrade pip
pip install --upgrade setuptools
pip install "requests>=2.22.0,<2.23.0" "ibm-cos-sdk>=2.5.4" "cos-aspera>=0.1.163682"

Überprüfen Sie die IQOS-Informationen

Melden Sie sich bei der IBM Cloud Console (Web) an, um Ihre ICOS-Dienstanmeldeinformationen zu überprüfen. Die Dienstanmeldeinformationen finden Sie in den in ICOS erstellten Bucket-Anmeldeinformationen. service_info.png

Lauf

Ein Beispielbefehl lautet wie folgt.

cos-upload.py <endpoint> <apikey> <bucket_name> <prefix> <file>

Auf Mac ausführen

$ python cos-upload.py s3.jp-tok.cloud-object-storage.appdomain.cloud "api-key" test-bucket "" test-upload-python-mac.txt

Initialize COS and Aspera Transfer Manager using endpoint: https://s3.jp-tok.cloud-object-storage.appdomain.cloud

Upload file to COS: /tmp/test-upload-python-mac.txt => test-upload-python-mac.txt
Upload file to COS completed.

Unter Windows ausführen

C:\tmp>py -2 D:\Workspace\cos-upload.py s3.jp-tok.cloud-object-storage.appdomain.cloud "api-key" test-bucket "" test-upload-python-win.txt

Initialize COS and Aspera Transfer Manager using endpoint: https://s3.jp-tok.cloud-object-storage.appdomain.cloud

Upload file to COS: C:\tmp\test-upload-python-win.txt => test-upload-python-win.txt
Upload file to COS completed.

Ankunftsbestätigung

Bestätigen Sie mit dem Befehl ibmcloud, dass der Upload erfolgreich war.

//Bestätigen Sie, dass es erfolgreich hochgeladen wurde
$ ibmcloud cos list-objects --bucket test-bucket
OK
Gefunden 3 Im Eimer befindet sich ein Objekt'test-bucket':

Name Datum und Uhrzeit der letzten Änderung Objektgröße
test.txt    Feb 28, 2020 at 02:27:12   14 B
test-upload-python-mac.txt   Mar 05, 2020 at 20:05:11   20 B
test-upload-python-win.txt   Mar 05, 2020 at 21:21:50   20 B

Nachwort

Ich denke, die Punkte der Python-Version sind "Aufbau der Ausführungsumgebung" und "Verständnis des Konzepts der Parameterspezifikation zur Laufzeit".

Ich lief auf der 3.7-Serie, ohne Require für eine Weile zu bemerken, also hatte ich Probleme mit install.sh, aber als ich es auf der 2.7-Serie implementierte, wurde es brillant gelöst, so dass ich Zeit verlor! Ich fühlte, dass. Ich glaube auch nicht, dass es viele Fälle gibt, in denen Python unter Windows ausgeführt wird, aber ich habe es versucht, weil es eine große Sache war und es funktioniert hat, also habe ich es hinzugefügt.

Die Laufzeitparameter "<Präfix>" und "" sind Songwriter, und wie Sie sehen können, wurden die Dateien zunächst nicht wie beabsichtigt hochgeladen, was etwas schwer zu verstehen war. Wenn Sie beispielsweise den vollständigen Pfad für "" angeben,

/tmp/upload/test.txt   Mar 03, 2020 at 21:21:50   20 B

Eine Datei mit dem Pfadnamen wird hochgeladen. Das Verschieben in das Verzeichnis der Datei, die Sie senden möchten, und das Aufrufen von "cos-upload.py" von dort aus muss also nicht schwierig sein, daher ist dies möglicherweise einfacher. Ich denke.

Referenzlink

Recommended Posts

Laden Sie Dateien mit SDK (Python-Version) auf Aspera hoch, das mit IBM Cloud Object Storage (ICOS) geliefert wird.
Konvertieren der cURL-API in ein Python-Skript (mithilfe des IBM Cloud-Objektspeichers)
Laden Sie Dateien in den Cloud Storage (GCS) von GCP hoch. ~ Laden Sie mit lokalem Python
So laden Sie Dateien mit Python in den Cloud-Speicher hoch [Erstellen Sie mit Raspberry PI # 1 eine Festkommakamera]
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 Dateien mit Lambda (Python) auf Google Drive hoch.
[Python] Ändern Sie die Cache-Steuerung von Objekten, die in den Cloud-Speicher hochgeladen wurden
Cloud-Funktionen zum Ändern der Bildgröße mithilfe von OpenCV mit Cloud Storage-Trigger
Laden Sie Dateien mit Django-Speicher in Google Cloud Storages hoch und löschen Sie sie
Änderungen an "Ausführen von Cloud Dataflow + Cloud Pub / Sub + Fluentd ..." mit SDK 2.1
Hochladen und Herunterladen von Bildern in Azure Storage. Mit Python + Anfragen + REST API
Datei-Upload in Azure Storage (Python)
Konvertieren Sie eine Tabelle in CSV und laden Sie sie mit Cloud-Funktionen in den Cloud-Speicher hoch
Kopieren Sie Daten von Amazon S3 mit Python (boto) in Google Cloud Storage.
Versuchen Sie, die Datenbank unter IBM i mit Python + JDBC mithilfe von JayDeBeApi zu starten
GAE - Drehen Sie mit Python das Bild basierend auf den Rotationsinformationen von EXIF und laden Sie es in den Cloud-Speicher hoch.
[AWS] Verwenden von INI-Dateien mit Lambda [Python]
Versuchen Sie, Python mit Google Cloud-Funktionen zu verwenden
Arbeiten mit OpenStack mit dem Python SDK
[GCP] Betreiben Sie Google Cloud Storage mit Python
Betreiben Sie den Cloud-Objektspeicher von Sakura von Python aus
Laden Sie Bilder mit Python auf Google Drive hoch
Studie aus Python Lesen und Schreiben von Hour9-Dateien
Lesen und Schreiben von CSV-Dateien
Laden Sie Dateien mit SDK (Python-Version) auf Aspera hoch, das mit IBM Cloud Object Storage (ICOS) geliefert wird.
Installieren Sie Anaconda auf Ihrem Mac und laden Sie Ihr Jupyter (IPython) -Notebook in die Anaconda Cloud hoch
So beheben Sie die Probleme beim Lesen von Google Cloud Storage-Bildern von Django, die auf GAE bereitgestellt wurden
Einstellungen zum Lesen von S3-Dateien mit Pandas aus Jupyter Notebook unter AWS
Lesen und Schreiben von JSON-Dateien mit Python
Betreiben Sie den Cloud-Objektspeicher von Sakura von Python aus
[IBM Cloud] Ich habe versucht, über Cloud Funtions (Python) auf die Tabelle Db2 on Cloud zuzugreifen.
So installieren Sie Fast.ai auf einer Alibaba Cloud-GPU und führen es auf einem Jupyter-Notebook aus
Konvertieren der cURL-API in ein Python-Skript (mithilfe des IBM Cloud-Objektspeichers)