win32api DLL load failed: Não foi possível encontrar o módulo especificado (solução)


Dica rápida que certamente irá ajudar muita gente que tem esse problema ao importar o win32api no Python


Se você está tendo o problema ao executar algum script que necessite a importação do win32api, e tem algum erro parecido com esse abaixo:

2018-01-27 22:55:40 [scrapy.utils.log] INFO: Scrapy 1.5.0 started (bot: courses)
2018-01-27 22:55:40 [scrapy.utils.log] INFO: Versions: lxml 4.1.1.0, libxml2 2.9.5, cssselect 1.0.3, parsel 1.3.1, w3lib 1.19.0, Twisted 17.9.0, Python 3.6.4 (v3.6.4:d48eceb, Dec 19 2017, 06:04:45) [MSC v.1900 32 bit (Intel)], pyOpenSSL 17.5.0 (OpenSSL 1.1.0g  2 Nov 2017), cryptography 2.1.4, Platform Windows-10-10.0.16299-SP0
2018-01-27 22:55:40 [scrapy.crawler] INFO: Overridden settings: {'BOT_NAME': 'courses', 'NEWSPIDER_MODULE': 'courses.spiders', 'ROBOTSTXT_OBEY': True, 'SPIDER_MODULES': ['courses.spiders']}
2018-01-27 22:55:41 [scrapy.middleware] INFO: Enabled extensions:
['scrapy.extensions.corestats.CoreStats',
 'scrapy.extensions.telnet.TelnetConsole',
 'scrapy.extensions.logstats.LogStats']
Unhandled error in Deferred:
2018-01-27 22:55:41 [twisted] CRITICAL: Unhandled error in Deferred:

2018-01-27 22:55:41 [twisted] CRITICAL:
Traceback (most recent call last):
  File "c:\program files (x86)\python36-32\lib\site-packages\twisted\internet\defer.py", line 1386, in _inlineCallbacks
    result = g.send(result)
  File "c:\program files (x86)\python36-32\lib\site-packages\scrapy\crawler.py", line 80, in crawl
    self.engine = self._create_engine()
  File "c:\program files (x86)\python36-32\lib\site-packages\scrapy\crawler.py", line 105, in _create_engine
    return ExecutionEngine(self, lambda _: self.stop())
  File "c:\program files (x86)\python36-32\lib\site-packages\scrapy\core\engine.py", line 69, in __init__
    self.downloader = downloader_cls(crawler)
  File "c:\program files (x86)\python36-32\lib\site-packages\scrapy\core\downloader\__init__.py", line 88, in __init__
    self.middleware = DownloaderMiddlewareManager.from_crawler(crawler)
  File "c:\program files (x86)\python36-32\lib\site-packages\scrapy\middleware.py", line 58, in from_crawler
    return cls.from_settings(crawler.settings, crawler)
  File "c:\program files (x86)\python36-32\lib\site-packages\scrapy\middleware.py", line 34, in from_settings
    mwcls = load_object(clspath)
  File "c:\program files (x86)\python36-32\lib\site-packages\scrapy\utils\misc.py", line 44, in load_object
    mod = import_module(module)
  File "c:\program files (x86)\python36-32\lib\importlib\__init__.py", line 126, in import_module
    return _bootstrap._gcd_import(name[level:], package, level)
  File "", line 994, in _gcd_import
  File "", line 971, in _find_and_load
  File "", line 955, in _find_and_load_unlocked
  File "", line 665, in _load_unlocked
  File "", line 678, in exec_module
  File "", line 219, in _call_with_frames_removed
  File "c:\program files (x86)\python36-32\lib\site-packages\scrapy\downloadermiddlewares\retry.py", line 20, in 
    from twisted.web.client import ResponseFailed
  File "c:\program files (x86)\python36-32\lib\site-packages\twisted\web\client.py", line 42, in 
    from twisted.internet.endpoints import HostnameEndpoint, wrapClientTLS
  File "c:\program files (x86)\python36-32\lib\site-packages\twisted\internet\endpoints.py", line 41, in 
    from twisted.internet.stdio import StandardIO, PipeAddress
  File "c:\program files (x86)\python36-32\lib\site-packages\twisted\internet\stdio.py", line 30, in 
    from twisted.internet import _win32stdio
  File "c:\program files (x86)\python36-32\lib\site-packages\twisted\internet\_win32stdio.py", line 9, in 
    import win32api
ImportError: DLL load failed: Não foi possível encontrar o módulo especificado.

Primeiramente tente instalar o pywin32 com o pip

pip install pypiwin32

Aqui agora vem o pulo do gato se você chegou a esse post é porque está ocorrendo o erro (que exibi a cima), e para solucionar o problema é mais fácil do que imagina!

Para exemplificação eu instalei o meu Python para todos os usuários, então ele está localizado em "C:\Program Files (x86)\Python36-32\" caso o seu esteja em outro lugar só seguir da mesma maneira porem com o caminho padrão do seu Python
Então e simples, encontre o diretório:
"C:\Program Files (x86)\Python36-32\Lib\site-packages\pywin32_system32" e copie os dois arquivos pythoncom36.dll e pywintypes36.dll para o diretório "C:\Program Files (x86)\Python36-32\Lib\site-packages\win32" pronto com isso certamente esse problema do win32api será resolvido.




Se vocês gostaram desse Post não deixe de compartilhar com seus amigos!!!
E para não perder nenhuma novidade nos sigam nas redes sociais:
Twitter: @Bulfaitelo
Facebook: Bulfaitelo Project
Blogger: Bulfaitelo Project
Share on Google Plus

About Thiago Rodrigues

Formado em Sistema de Informação pela Faculdade Paraíso
O que falar de mim? Não á muito, mas garanto que meu objetivo aqui é somente ajudar!
Atualmente desenvolvendo o projeto do QiEstudo.

Comentários
0 Comentários

0 comentários:

Postar um comentário

Observação: somente um membro deste blog pode postar um comentário.