1

I'm trying to connect Zoho Analytics and Python via Zoho client library here: https://www.zoho.com/analytics/api/#python-library

I downloaded the client library file but now have no idea how to use it. What I want to do is importing data from Zoho Analytics to Python and the suggested code on Zoho is:

from __future__ import with_statement
from ReportClient import ReportClient
import sys

from __future__ import with_statement
from ReportClient import ReportClient
import sys

class Sample:

    LOGINEMAILID="abc@zoho.com"
    AUTHTOKEN="************"
    DATABASENAME="Workspace Name"
    TABLENAME="Table Name"
    rc = None
    rc = ReportClient(self.AUTHTOKEN)

    def importData(self,rc):
        uri = rc.getURI(self.LOGINEMAILID,self.DATABASENAME,self.TABLENAME)
        try:
            with open('StoreSales.csv', 'r') as f:
            importContent = f.read()
        except Exception,e:
            print "Error Check if file StoreSales.csv exists in
                                        the current directory"
            print "(" + str(e) + ")"
            return
        impResult = rc.importData(uri,"APPEND",importContent,None)
        print "Added Rows :" +str(impResult.successRowCount) + " and Columns :"
                    + str(impResult.selectedColCount)

obj = Sample()
obj.importData(obj.rc)

How do I make from ReportClient import ReportClient work?

Also, how does rc = ReportClient(self.AUTHTOKEN) work if self wasn't predefined?

Will Da Silva
  • 6,386
  • 2
  • 27
  • 52

1 Answers1

3

On the site you linked, you can download a zip file containing the file Zoho/ZohoReportPythonClient/com/adventnet/zoho/client/report/python/ReportClient.py. I'm not sure why it's so deeply nested, or why most of the folders contain an __init__.py file which only has #$Id$ in it.

You'll need to extract that file, and place it somewhere where your Python interpreter can find it. For more information about where Python will look for the module (ReportClient.py), see this question: How does python find a module file if the import statement only contains the filename?

Please note that the file is Python 2 code. You'll need to use a Python 2 interpreter, or convert it to Python 3 code. Once you've got it importing properly, you can use their API reference to start writing code with it: https://css.zohostatic.com/db/api/v7_m2/docs/python/

Will Da Silva
  • 6,386
  • 2
  • 27
  • 52