Ich habe ein Python-Skript erstellt, das regelmäßig die globale IP für die SSH-Verbindung zu Raspberry Pi in Google Spreadsheet schreibt.
Sammeln Sie die folgenden Informationen in der config.ini.
--Google Benutzerkonto
config.ini
[google]
username = ****
password = ****
spreadsheet_key = *****(Tabellenkalkulations-ID)
Die Tabellenkalkulations-ID entspricht dem ***** Teil.
https://docs.google.com/spreadsheets/d/*******/edit#gid=0
Verwenden Sie gdata.
sudo apt-get install python-gdata
Ich habe eine Klasse erstellt, die durch Angabe der IP und der Position (Zeile, Spalte) aktualisiert werden kann.
Das erste Blatt (od6) ist standardmäßig ausgewählt.
Referenz: http://qiita.com/debiru/items/27a48dfb3b1c010cd478
mySpreadsheet.py
import gdata.spreadsheets.client
import gdata.spreadsheet.service
import ConfigParser
class mySpreadsheet:
user = ''
passwd = ''
key = ''
sheet_id= ''
def __init__(self,config):
inifile = ConfigParser.SafeConfigParser()
inifile.read(config)
self.user = unicode(inifile.get("google","username"))
self.passwd = unicode(inifile.get("google","password"))
self.key = unicode(inifile.get("google","spreadsheet_key"))
self.sheet_id = 'od6'
def updateCell(self,value,row,col):
client = gdata.spreadsheet.service.SpreadsheetsService(self.user,self.passwd)
client.ProgrammaticLogin()
cell = client.UpdateCell(inputValue = value,
row = row, col = col,
key = self.key,
wksht_id = self.sheet_id)
if __name__ == "__main__":
m = mySpreadsheet('config.ini')
m.updateCell('hoge',1,1)
Wenn Sie die obige Klasse lesen und die IP übergeben, ist dies in Ordnung
updateip.py
import json
from urllib2 import urlopen
from mySpreadsheet import *
m = mySpreadsheet('config.ini')
ip = json.load(urlopen('http://httpbin.org/ip'))['origin']
m.updateCell(ip,1,2)
print ip
Recommended Posts