1 Reply Latest reply on Feb 4, 2014 2:22 AM by stylight analytics

    can't import DataExtract API for Python

    stylight analytics

      I've implemented a simple ETL script to be able to push some data to Tableau Online by generating TDE file. It worked pretty well on my dev machine, but with production one I couldn't import DataExtract API. What could be a reason of it?

      Traceback (most recent call last):

        File "<stdin>", line 1, in <module>

        File "c:\Python27\lib\site-packages\dataextract\__init__.py", line 15, in <mod


          from Base import *

        File "c:\Python27\lib\site-packages\dataextract\Base.py", line 17, in <module>



          from . import Types

        File "c:\Python27\lib\site-packages\dataextract\Types.py", line 17, in <module


          tablib = libs.load_lib

        File "c:\Python27\lib\site-packages\dataextract\Libs.py", line 36, in load_lib



          self.lib = ctypes.cdll.LoadLibrary(self.lib_path)

        File "c:\Python27\lib\ctypes\__init__.py", line 443, in LoadLibrary

          return self._dlltype(name)

        File "c:\Python27\lib\ctypes\__init__.py", line 365, in __init__

          self._handle = _dlopen(self._name, mode)

      WindowsError: [Error 193] %1 is not a valid Win32 application


      Yes, I use

      Python 2.7.6 (default, Nov 10 2013, 19:24:24) [MSC v.1500 64 bit (AMD64)]


      x64 distribution of DataExtract-8000.13.0712.1936

        • 1. Re: can't import DataExtract API for Python
          stylight analytics

          Actually I didn't find what was wrong with one specific installation. The main question that it's worked on my local machine but didn't work on another one.


          So I end up with installing another independent x32 Python environment, where tableau API worked for me.


          More about details, I tried to load Tableau Dlls one-by-one, and found that I could load icudt44.dll, but couldn't load icuuc44.dll, from another point I also could load all dependencies of that library, so strange.