Jak czytać i zapisywać w Arkuszach Google za pomocą Pythona

  • Brian Curtis
  • 0
  • 2926
  • 73
Reklama

Python jest doskonałym językiem programowania. Składnia może wydawać się dziwna i nietypowa, jednak jest łatwa do nauczenia się i używania. Obsługuje Minecraft Pi Edition Dowiedz się Python i elektronika z Minecraft Pi Edition Naucz się Python i elektronika z Minecraft Pi Edition Czy zawsze chciałeś nauczyć się kodować, ale nie wiedziałeś, od czego zacząć? Dowiedz się, jak kontrolować Minecraft na Raspberry Pi za pomocą Pythona i prostej elektroniki. , wraz z mnóstwem stron internetowych i akademickich projektów badawczych.

W tym artykule pokażę, jak czytać i pisać w Arkuszach Google przy użyciu Pythona. Przeczytaj nasze powody, dla których programowanie w języku Python nie jest bezużyteczne 5 powodów, dla których programowanie w języku Python nie jest bezużyteczne 5 powodów, dla których programowanie w języku Python nie jest bezużyteczne Python - albo go lubisz, albo go nienawidzisz. Możesz nawet huśtać się z jednego końca na drugi jak wahadło. Niezależnie od tego Python jest językiem, w którym trudno być ambiwalentnym. i nasze pięć ustawień Arkuszy Google 5 Ustawienia Arkuszy Google Niezbędne do pracy zespołowej 5 Arkuszy Google Ustawienia Niezbędne do pracy zespołowej Arkusze Google mają więcej funkcji do obsługi wprowadzania i przetwarzania danych zbiorczych, niż może się wydawać. Zapoznamy Cię z funkcjami Arkuszy Google, które są niezbędne w projektach grupowych. które są niezbędne do pracy zespołowej. Zapewnią użyteczne informacje podstawowe. Jeśli dopiero zaczynasz swoją podróż w języku Python, te 5 najlepszych stron internetowych do nauki języka Python 5 najlepszych stron internetowych do nauki programowania w języku Python 5 najlepszych stron internetowych do nauki programowania w języku Python Chcesz nauczyć się programowania w języku Python? Oto najlepsze sposoby nauki języka Python online, z których wiele jest całkowicie darmowych. są dobrym punktem wyjścia.

Konfiguracja Google

Zanim przejdziesz do kodu, potrzebujesz wstępnej konfiguracji w Arkuszach Google.

Najpierw utwórz nowy arkusz. Możesz pominąć ten krok, jeśli masz już skonfigurowany. Korzystam z listy samochodów rajdowych dla tego przykładu:

Teraz musisz skonfigurować opcje udostępniania. Musisz wygenerować Podpisane poświadczenia, coś, co brzmi trudniej niż jest. Przejdź do Google Developers Console i utwórz nowy projekt (lub użyj istniejącego):

Nadaj projektowi odpowiednią nazwę, a następnie kliknij Stwórz:

Pod spodem Interfejsy API Google Apps Wybierz Drive API:

Wybierać Włączyć:

Teraz wybierz Kwalifikacje w lewym menu:

Kliknij małą strzałkę na Utwórz poświadczenia przycisk:

Teraz wybierz Klucz konta usługi:

Wybierać Domyślne konto usługi App Engine pod Konto serwisowe i JSON jako format:

Kliknij Utwórz, a powinieneś dostać .json pobieranie pliku. Przenieś to do katalogu projektu i zmień jego nazwę creds.json. Na koniec otwórz plik i poszukaj klient_email. To powinna być nazwa twojego projektu na appspot.gserviceaccount.com. Udostępnij swój arkusz Google przy użyciu tego adresu e-mail (W prawym górnym rogu > Dzielić > Wprowadź e-mail).

To wszystko po stronie Dysku Google.

Konfiguracja Pythona

Istnieją dwie główne wersje Pythona: 2.7 i 3.x. Będę używać wersji 2.7, ale tak naprawdę nie ma znaczenia, z czego korzystasz. Wiki Python rozkłada różnice, jeśli jesteś zainteresowany. Możesz zainstalować środowisko wirtualne. Jest to poza zakresem tego artykułu, ale dobra praktyka.

Jeśli korzystasz z systemu Microsoft Windows, może być konieczne pobranie i zainstalowanie Pythona. Mac OS jest wyposażony w już zainstalowany Python. Ponieważ używam komputera Mac, ten projekt zostanie utworzony jako taki. Powinieneś być w stanie dobrze śledzić na komputerze z systemem Windows lub Linux. Zapoznaj się z naszym przewodnikiem. Hej, użytkownik systemu Windows. Powinieneś przejść na system Linux lub Mac? Hej, użytkownik systemu Windows, powinieneś przełączyć się na system Linux lub Mac? Czy zastanawiałeś się kiedyś nad przejściem z systemu Windows na Linux lub Mac? Szybka odpowiedź: jeśli korzystasz z systemu Windows, pozostań w systemie Windows i nie martw się jeszcze o aktualizację. Dlatego. czy powinieneś zmienić.

Najpierw otwórz nowy terminal. Będziesz musiał użyć pip, aby zainstalować niektóre pakiety Pythona. Jest to zalecane narzędzie, które bardzo ułatwia zarządzanie pakietami. Pochodzi z Python.

Musisz zainstalować oauth2client. Oauth to system autoryzacji sieci. Nie będę omawiać szczegółów tego, ale jest konieczne, aby wszystko działało poprawnie i bezpiecznie. Jest łatwy w instalacji za pomocą pip:

pip install oauth2client

W zależności od konfiguracji może być konieczne zainstalowanie PyOpenSSL:

pip zainstaluj PyOpenSSL

Teraz musisz zainstalować Gspread autorstwa Anton Burnashev na GitHub. To doskonała biblioteka napisana, aby ułatwić dostęp do Arkuszy Google w Pythonie. Ponownie jest to łatwe do zainstalowania za pomocą pip:

pip zainstaluj gspread

Teraz otwórz swój ulubiony edytor tekstu (używam Sublime Text 3). Utwórz nowy plik Python i zapisz go w katalogu projektu jako google_io.py. Oto kod testowy:

drukuj „Witaj, świecie!”

Wróć do swojego Terminal i przejdź do katalogu projektu. Możesz to zrobić poprzez Płyta CD dowództwo. Możesz użyć ls do listy plików i pwd aby wyświetlić katalog roboczy.

W katalogu projektu możesz wykonać skrypt w języku Python w następujący sposób:

python google_io.py

Powinieneś teraz zobaczyć Witaj świecie! w linii poleceń:

Teraz, gdy Python działa poprawnie, przejdźmy do konfiguracji bibliotek. Usuń kod powitalny świata. Teraz zaimportuj Gspread i ponownie uruchom kod:

importuj gspread

Jeśli wszystko działa poprawnie, nic się nie stanie. Jeśli pojawi się błąd, być może mówiąc żaden moduł o nazwie X gdzie X jest nazwą wpisanego modułu (Gspread) przejdź i sprawdź dwukrotnie, czy pip poprawnie zainstalował moduł i czy nie popełniłeś błędu typograficznego.

Oto kod na początek:

import json import gspread z oauth2client.client import SignedJwtAssertionCredentials json_key = json.load (open ('creds.json')) # poświadczenia json, które wcześniej pobrałeś scope = ['https://spreadsheets.google.com/feeds'] poświadczenia = SignedJwtAssertionCredentials (json_key ['client_email'], json_key ['private_key']. Encode (), scope) # pobierz e-mail i klucz z pliku creds = gspread.authorize (poświadczenia) # uwierzytelnij za pomocą Google sheet = file.open ("MUO_Python_Sheet" ). arkusz 1 # otwórz arkusz

To po prostu pobiera twoje dane z .json plik, a następnie używa ich do uwierzytelnienia w Google. Następnie otwiera arkusz o nazwie Arkusz MUO_Python. Może być konieczna zmiana tego na nazwę swojego arkusza (pod warunkiem, że poprawnie go udostępniłeś). W Pythonie rozróżniana jest wielkość liter, więc upewnij się, że wpisałeś ten kod poprawnie.

Czytanie

Teraz, gdy wszystko jest już skonfigurowane, odczytywanie lub zapisywanie danych jest banalne. Oto jak wybierasz zakres komórek (w tym przypadku wszystkie komórki samochodowe):

all_cells = sheet.range ('A1: C6') drukuj all_cells

Oto jak to wygląda:

Niezbyt miło, prawda? Python zrzucił zawartość obiektu, bez względu na formatowanie. Ponieważ jest to przechowywane w wszystkie_komórki zmiennej, można uzyskać do niej dostęp jak każdy inny obiekt Python. Oto jak wydrukować wszystkie wartości komórek w ładniejszym formacie:

dla komórki w all_cells: print cell.value

I wygląda to tak:

Można uzyskać dostęp do komórek indywidualnie (chociaż jest to powolne, jeśli robisz to wiele razy):

A1 = arkusz. Komórka („A2”). Wartość # to komórka zawiera „Ford”

Lub możesz użyć współrzędnych komórki:

coordin = sheet.cell (3, 0). wartość

Łatwo jest uzyskać wszystkie wartości dla wiersza:

row = sheet.row_values ​​(1) # pierwszy rząd

Lub możesz uzyskać całą kolumnę. To dostaje Model rząd:

col = sheet.col_values ​​(2) # modele

Pamiętaj, że te dwie metody nie wiedzą, ile danych masz. Jeśli masz tylko trzy rzędy, wiele dodatkowych pusty komórki zostaną zwrócone. Prawie zawsze lepiej jest uzyskać dostęp do wstępnie zdefiniowanego bloku komórek.

Pisanie

Równie łatwo jest zapisać z powrotem w arkuszu i można używać nazw komórek lub współrzędnych, tak jak podczas czytania:

sheet.update_acell ('C2', 'Blue') sheet.update_cell (2, 3, 'Blue')

Strona projektu w GitHub zawiera wiele innych przykładów.

Jeśli piszesz na ważnym arkuszu, możesz rozważyć bezpieczeństwo komórka. Przechowuj wartość w pewnej komórce (używam “Nie usuwaj tego”), a następnie najpierw przeczytaj tę komórkę. Jeśli zawartość się zmieniła, to kolumny zostały dodane lub usunięte w twoim arkuszu, więc nie kontynuuj pisania! Oto, jak można to osiągnąć:

if sheet.acell ('B3')! = 'BEZPIECZEŃSTWO': # coś zmieniło się w arkuszu, NIE PROCESYĆ zgłaszania wyjątku („O rany, nie jestem na to gotowy.”) else: # kontynuuj pisanie sheet.update_acell („C2”, „Niebieski”)

To dobra praktyka. Zapewnia, że ​​skrypt nie może przypadkowo zapisać w niewłaściwej kolumnie. Nie zastępuje prawidłowych kopii zapasowych (masz kopie zapasowe, prawda?).

Teraz, gdy znasz podstawy, idź i zrób coś fajnego! Dowiedz się, jak korzystać z crona Jak planować zadania w systemie Linux za pomocą Cron i Crontab Jak planować zadania w systemie Linux za pomocą Cron i Crontab Możliwość automatyzacji zadań jest jedną z tych futurystycznych technologii, które już tu są. Każdy użytkownik Linuksa może skorzystać z planowania systemu i zadań użytkownika, dzięki cron, łatwej w obsłudze usłudze w tle. zaplanować zadania w systemie Linux (lub sprawdzić alternatywę dla systemu Windows: Jak uruchamiać zadania Cron typu Linux w systemie Windows Jak uruchamiać zadania Cron typu Linux w systemie Windows). Może mógłbyś zasilić ramkę na zdjęcie ShowerThoughts i EarthPorn: Stwórz inspirującą ramkę na zdjęcia Raspberry Pi ShowerThoughts i EarthPorn: Stwórz inspirującą ramkę na zdjęcia Raspberry Pi lub zrobić deskę rozdzielczą w biurze - tak zrobiłem!

Czy korzystałeś już wcześniej z Arkuszy Google? Daj nam znać swoje doświadczenia w komentarzach poniżej!




Jeszcze bez komentarzy

O nowoczesnej technologii, prostej i niedrogiej.
Twój przewodnik w świecie nowoczesnych technologii. Dowiedz się, jak korzystać z technologii i gadżetów, które nas otaczają każdego dnia i dowiedz się, jak odkrywać ciekawe rzeczy w Internecie.