Bir e-tabloyu Google spreedsheets'ten indirmek için python yordamını yazmaya çalışıyorum ve .xls olarak kaydedin. Bunu çalıştırmayı denediğinizde zaman burada ben gveri kitaplığı kullanarakGoogle E-tabloyu indir ve xls olarak kaydet
gdata.service.RequestError: {'status': 401, 'body': '<HTML>\n<HEAD>\n<TITLE>Unauthorized</TITLE>\n</HEAD>\n<BODY BGCOLOR="#FFFFFF" TEXT="#000000">\n<H1>Unauthorized</H1>\n<H2>Error 401</H2>\n</BODY>\n</HTML>\n', 'reason': 'Unauthorized'}
Am altında bir gveri hatası alıyorum, benim kod
import os
import sys
from getpass import getpass
import gdata.docs.service
import gdata.spreadsheet.service
'''
get user information from the command line argument and
pass it to the download method
'''
def get_gdoc_information():
email ="mygmailaccount"
password ="mypassword"
gdoc_id = ['google_id1','googleid2','googleidn']
for doc_id in gdoc_id:
try:
download(doc_id, email, password)
except Exception, e:
raise e
#python gdoc.py 1m5F5TXAQ1ayVbDmUCyzXbpMQSYrP429K1FZigfD3bvk#gid=0
def download(doc_id, email, password, download_path=None,):
print "Downloading the XLS file with id %s" % doc_id
gd_client = gdata.docs.service.DocsService()
#auth using ClientLogin
gs_client = gdata.spreadsheet.service.SpreadsheetsService()
gs_client.ClientLogin(email, password)
#getting the key(resource id and tab id from the ID)
resource = doc_id.split('#')[0]
tab = doc_id.split('#')[1].split('=')[1]
resource_id = 'spreadsheet:'+resource
if download_path is None:
download_path = os.path.abspath(os.path.dirname(__file__))
file_name = os.path.join(download_path, '%s.xls' % (doc_id))
print 'Downloading spreadsheet to %s...' % file_name
docs_token = gd_client.GetClientLoginToken()
gd_client.SetClientLoginToken(gs_client.GetClientLoginToken())
gd_client.Export(resource_id, file_name, gid=tab)
gd_client.SetClientLoginToken(docs_token)
print "Download Completed!"
if __name__=='__main__':
get_gdoc_information()
olduğunu. Bütün gün bununla mücadele ediyorum ve neler olduğunu anlayamıyorum. Herkes anlayabiliyor ve yardım edebilir mi? Yukarıda açıklandığı şekilde amacına ulaşabilecek herhangi bir minimum betik çok takdir edilecektir. Teşekkür ederiz