Kako čitati i pisati na Google tablice s Python-om

  • Edmund Richardson
  • 0
  • 4941
  • 1464
Oglas

Python je odličan programski jezik. Sintaksa se može činiti čudnom i neobičnom, no lako je učiti i koristiti. Omogućuje Minecraft Pi Edition Saznajte Python i elektroniku s Minecraft Pi Edition Saznajte Python i Elektroniku s Minecraft Pi Edition Oduvijek ste željeli naučiti kodirati, ali niste znali odakle započeti? Saznajte kako kontrolirati Minecraft na Raspberry Pi pomoću Pythona i neke jednostavne elektronike. , zajedno s mnoštvom web stranica i akademskih istraživačkih projekata.

U ovom ću vam članku pokazati kako čitati i pisati na Google tablice koristeći Python. Pročitajte naše razloge zbog kojih Python programiranje nije beskorisno 5 razloga zašto Python programiranje nije beskorisno 5 razloga zašto Python programiranje nije beskorisno Python - ili ga volite ili mrzite. Možete čak i ljuljati s jednog kraja na drugi poput klatna. Bez obzira na to, Python je jezik o kojem je teško biti ambivalentan. i naših pet postavki Google tablica 5 Postavke Google listova bitno za timski rad 5 Postavke Google listova bitno za timski rad Google listovi imaju više funkcija za podršku kolektivnog unosa i obrade podataka nego što možda mislite. Upoznat ćemo vas s funkcijama i značajkama Google tablica koje su ključne za grupne projekte. koji su ključni za timski rad. Pružit će vam korisna pozadinska znanja. Ako tek započinjete putovanje Pythonom, ovih 5 najboljih web stranica za učenje Pythona 5 najboljih web stranica za učenje programiranja Pythona 5 najboljih web stranica za učenje programiranja Pythona Želite naučiti programiranje Pythona? Evo najboljih načina za učenje Pythona na mreži, od kojih su mnogi potpuno besplatni. dobro su polazište.

Google postavke

Prije nego što preskočite kôd, na Google listovima potrebno je neko početno postavljanje.

Prvo napravite sebi novi list. Ovaj korak možete preskočiti ako ga već imate. Za ovaj primjer koristim popis rally automobila:

Sada trebate postaviti mogućnosti dijeljenja. Trebat ćete generirati Potpisane vjerodajnice, nešto što zvuči teže nego što jest. Dođite do Google konzole za programere i izradite novi projekt (ili upotrijebite postojeći):

Dajte svom projektu odgovarajuće ime, a zatim kliknite stvoriti:

Ispod API-ji za Google Apps Odaberi API za pogon:

izabrati Omogućiti:

Sada odaberite akreditiv na lijevom izborniku:

Kliknite malu strelicu na Kreirajte vjerodajnice dugme:

Sada odaberite Ključ računa usluge:

izabrati Zadani račun usluge App Engine pod, ispod Račun usluge i JSON kao format:

Kliknite Create, i trebali biste dobiti .JSON preuzimanje datoteke. Premjestite to u direktorij projekta i preimenovajte ga creds.json. Na kraju, otvorite datoteku i potražite client_email. To bi trebao biti naziv vašeg projekta na appspot.gserviceaccount.com. Podijelite svoj Google Sheet s ovom adresom e-pošte (Gore desno > Udio > Unesite e-poštu).

To je to za Google Drive.

Postavljanje Pythona

Postoje dvije glavne Python verzije: 2.7 i 3.x. Koristit ću 2.7, ali zapravo nije važno što koristite. Python wiki ne razdvaja razlike ako ste zainteresirani. Možda želite instalirati virtualno okruženje. To je izvan dosega ovog članka, ali dobre prakse.

Ako imate Microsoft Windows, možda ćete trebati preuzeti i instalirati Python. Mac OS dolazi s već instaliranim Pythonom. Kako koristim Mac, ovaj će projekt biti stvoren kao takav. Trebali biste biti u mogućnosti pratiti razumno na Windows ili Linux stroju. Obavezno pročitajte naš vodič Hey Windows User, Treba li se prebaciti na Linux ili Mac? Pozdrav Windows korisniče, treba li se prebaciti na Linux ili Mac? Jeste li ikad razmišljali o prelasku s Windows-a na Linux ili Mac? Brzi odgovor: ako ste u sustavu Windows, ostanite u sustavu Windows - i ne brinite se oko nadogradnje. Evo zašto. da li biste se trebali prebaciti.

Prvo otvorite novi terminal. Morat ćete koristiti pip za instaliranje nekih Python paketa. Ovo je alat za preporuku koji olakšava upravljanje paketima. Dolazi s Pythonom.

Trebate instalirati oauth2client. Oauth je mrežni okvir za autorizaciju. Neću raspravljati o njezinim detaljima, ali potrebno je da sve pravilno i sigurno funkcionira. Instalirati je pomoću pip-a:

pip uvesti oauth2client

Možda ćete morati instalirati i PyOpenSSL, ovisno o vašem postavljanju:

pip instalacija PyOpenSSL

Sada morate instalirati Gspread Anton Burnashev na GitHub. Ovo je izvrsna knjižnica napisana kako bi se olakšao pristup Google tablicama na Pythonu. Ponovo je ovo jednostavno instalirati pomoću pip-a:

pip install gspread

Sada otvorite svoj omiljeni uređivač teksta (koristim Sublime Text 3). Stvorite novu Python datoteku i spremite je u direktoriju projekta kao google_io.py. Evo testnog koda:

print 'Zdravo, svijet!'

Vratite se na svoje Terminal i pomaknite se do direktorija projekta. To možete učiniti putem CD naredba. Možeš koristiti ls za popis datoteka i pwd pokazati svoj radni imenik.

Jednom kada se nađete u direktoriju projekata, možete izvršiti Python skriptu ovako:

python google_io.py

Sad biste trebali vidjeti Pozdrav svijete! u vašem naredbenom retku:

Sada kada Python ispravno radi, idemo naprijed i postavimo knjižnice. Izbriši hello svjetski kod. Sada uvezite Gspread i ponovo pokrenite kod:

uvoz gspread

Ako stvari rade ispravno, ništa se neće dogoditi. Ako se pojavi pogreška, možda kažem nijedan modul nazvan X gdje je X naziv modula koji ste upisali (Gspread) idite i dvostruko provjerite da li je pip ispravno instalirao modul, a da niste napravili tipografsku grešku.

Evo koda za početak:

import json import gspread from oauth2client.client import SignedJwtAssertionCredentials json_key = json.load (open ('creds.json')) # json vjerodajnice koje ste preuzeli ranije obseg = ['https://spreadsheets.google.com/feeds'] vjerodajnice = SignedJwtAssertionCredentials (json_key ['client_email'], json_key ['private_key']. Encode (), obseg) # dobiti e-poštu i ključ od datoteke datoteke = gspread.authorize (vjerodajnice) # potvrdi se s Google list = file.open ("MUO_Python_Sheet" ) .sheet1 # otvoreni list

Ovo jednostavno dohvaća vaše podatke iz .JSON datoteke, a zatim ih upotrebljava za autentifikaciju s Googleom. Zatim otvara list zvan MUO_Python_Sheet. Možda ćete trebati promijeniti ime lista (pod uvjetom da ste ga ispravno podijelili). Python razlikuje velika i mala slova, stoga obavezno ispravno unesite ovaj kôd.

Čitanje

Sad kad je sve postavljeno, trivijalno je čitati ili pisati podatke. Evo kako odabirete raspon ćelija (u ovom slučaju sve ćelije automobila):

all_cells = sheet.range ('A1: C6') ispisati sve_celice

Evo kako to izgleda:

Nije baš lijepo? Python je izbacio sadržaj objekta, bez obzira na formatiranje. Jer je ovo pohranjeno u all_cells varijabli, može joj se pristupiti kao i bilo kojem drugom Python objektu. Evo kako ispisati sve vrijednosti ćelije u ljepšem formatu:

za ćeliju u svim elementima: ispis ćelije.valika

A to izgleda ovako:

Mobitelima je moguće pristupiti pojedinačno (mada je to sporo ako to radite mnogo puta):

A1 = sheet.acell ('A2'). Vrijednost # ova ćelija sadrži "Ford"

Ili možete koristiti koordinate ćelije:

koordina = list.cell (3, 0). vrijednost

Lako je dobiti sve vrijednosti za red:

row = sheet.row_values ​​(1) # prvi red

Ili možete dobiti čitavu kolonu. Ovo dobiva Model red:

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

Imajte na umu da ove dvije metode ne znaju koliko podataka imate. Ako imate samo tri reda, više dodatnih prazan stanice će biti vraćene. Gotovo je uvijek bolje pristupiti unaprijed definiranom bloku ćelija.

Pisanje

To je jednako lako zapisati natrag u list, a možete koristiti imena ili koordinate ćelija, baš kao i prilikom čitanja:

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

Stranica projekta na GitHubu ima još mnogo primjera.

Ako pišete na važnom listu, razmislite o tome sigurnosni stanica. Spremite vrijednost u određenu ćeliju (ja koristim “Ne brišite ovo”), a zatim prvo pročitajte tu ćeliju. Ako se sadržaj promijenio, stupci su dodani ili uklonjeni na vašem listu, tako da ne nastavite s pisanjem! Evo kako se to moglo postići:

ako sheet.acell ('B3')! = 'SIGURNOST': # nešto se promijenilo u listu, NE POSTUPITE povišenje izuzeća ("Oh moj, nisam spreman za ovo.") ostalo: # nastavite s pisanjem sheet.update_acell ( 'C2', 'Blue')

To je dobra praksa. To osigurava da se vaša skripta ne može slučajno zapisati u pogrešan stupac. To nije zamjena za ispravne sigurnosne kopije (imate sigurnosne kopije, zar ne?).

Sad kad znate osnove, idite i napravite nešto cool! Naučite kako koristiti cron Kako planirati zadatke u Linuxu s Cron i Crontab Kako planirati zadatke u Linuxu s Cron i Crontab Sposobnost automatizacije zadataka jedna je od onih futurističkih tehnologija koja se već nalazi ovdje. Svaki korisnik Linuxa može imati koristi od zakazivanja sustava i zadataka korisnika, zahvaljujući cron-u, pozadinskoj usluzi jednostavnoj upotrebi. zakazati zadatke u Linuxu (ili naručiti neku alternativu za Windows. Kako izvoditi zadatke Linux Style Cron u sustavu Windows Kako pokrenuti Linux Style Cron Jobs u sustavu Windows). Možda biste mogli napajati fotookvir ShowerThoughts i EarthPorn: Napravite inspirativni tuš za okvir maline PiThoughts i EarthPorn: Napravite inspirativni okvir za fotografije Raspberry Pi ili napravite uredsku nadzornu ploču - to sam i učinio!

Jeste li ranije komunicirali s Google tablicama? Javite nam svoja iskustva u komentarima ispod!




Još ne komentari

O modernoj tehnologiji, jednostavnoj i pristupačnoj.
Vaš vodič u svijetu moderne tehnologije. Naučite kako koristiti tehnologije i uređaje koji nas okružuju svaki dan i naučite kako otkriti zanimljivosti na Internetu.