有小夥伴在羣裡邊反映說在使用Scrapy的時候,發現創建項目一切順利,但是在執行Scrapy爬蟲程序的時候卻出現下列報錯:「No module named win32api」,如下圖所示,但是不知道怎麼破,今天就這個問題講解一下解決方案。

出現這個報錯是因為在Windows下我們缺少一個包,叫pypiwin32,這個報錯一般只是在Windows下出現。很多小夥伴看到「No module named win32api」,於是乎便想著直接輸入安裝命令「pip install win32api」,結果系統給出下圖提示:

「Could not find aversion that satisfies the requirement win32api (from versions: ) No matchingdistribution found for win32api」。

原來是沒有找對安裝包,正確的姿勢是安裝pypiwin32纔是,輸入安裝命令「pip install pypiwin32」,結果如下圖所示:

小夥伴們又傻眼了,What???

再嘗試從豆瓣源上進行下載該庫,結果如下圖所示:

還是報錯,確實是好尷尬。

接下來就該求助Python包網站lfd.uci.edu/~gohlke/pyt,裡邊的Python包專門用於Windows下的安裝的。在網頁中找到pypiwin32安裝包,然後選擇本機Python對應版本和電腦系統位數的安裝包,小編的電腦是64位的,而且Python版本是Python3.4,所以下載的包如下圖紅色框框所示。

下載之後,將安裝包放到site-packages文件夾下,如下圖所示。

之後執行安裝命令「pip install pywin32-223.1-cp34-cp34m-win_amd64.whl」,如下圖所示,顯示「pywin32-223.1-cp34-cp34m-win_amd64.whlis not a supported wheel on this platform.」,無支持的平臺。

此時仍需要get一個小技巧,之前在Scrapy安裝的問題總結一文中也有提及,這裡再次藉助這個方法進行實現,直接將.whl改為.zip,爾後進行解壓即可,輸入「pip list」進行查看。

可以看到pywin32已經在裡邊了,並不是pypiwin32,懷著試一試的心態,再次執行爬蟲命令,可以看到不再報這個錯誤了,竟然解決了這個問題。PS:因為爬蟲程序的主題文件還沒有任何的邏輯實現,所以返回的pipelines數據為空。

最後安利一個小技巧。最近有的小夥伴在羣裏問,如果不小心沒有記住Scrapy爬蟲項目的名字,又不想去Pycharm中進行查看爬蟲主體文件,該腫麼辦?這裡介紹一個小技巧,可以幫助你找到爬蟲的名字。直接在命令行中輸入「scrapy list」即可看到爬蟲的名字,如下圖所示。

到這裡,關於「No module namedwin32api」的報錯問題已經得到了解決,下次小夥伴們可以直接輸入安裝命令「pip install pywin32」即可,如果有報錯的話,可以再嘗試文中的解決問題的思路和方法。

不過全文中的解決問題的思路和方法,小夥伴們日後都可以借鑒一下,希望對的大家的學習有幫助。


推薦閱讀:
相關文章