pycharm創建scrapy項目教程及遇到的坑


最近學習scrapy爬蟲框架,在使用pycharm安裝scrapy類庫及創建scrapy項目時花費了好長的時間,遇到各種坑,根據網上的各種教程,花費了一晚上的時間,終於成功,其中也踩了一些坑,現在整理下相關教程,希望幫助那些遇到和我一樣問題的碼農。

1、環境

  • 操作系統:windows10。
  • python版本:python3.7,必須使用Anaconda,目前是Anaconda5.3.1。下載地址:https://www.anaconda.com/download/。 下載64位的安裝包。scrapy依賴的類庫比較多,使用Anaconda會將相關的依賴的類庫都安裝好,並且版本保持一致。
  • pycharm:pycharm2018。

2、安裝Anaconda

安裝好Anaconda之后,將下面的變量加入到系統環境變量中:

e:\Anaconda3;e:\Anaconda3\Library\mingw-w64\bin;e:\Anaconda3\Library\usr\bin;e:\Anaconda3\Library\bin;e:\Anaconda3\Scripts;

上面是我本機上的環境變量,我是將Anaconda3安裝在E盤的Anaconda3文件夾中。

3、安裝scrapy相關類庫

打開pycharm,創建一個項目,然后開始安裝相關的類庫。通過下面的方式查找類庫,點擊左上角的File按鈕,會彈出如下的界面:
pycharm scrapy

點擊Settings按鈕,會彈出下面的菜單:
pycharm scrapy

然后點擊右邊的“+”,就會彈出安裝類庫的界面:
pycharm scrapy

在上圖中查詢類庫,然后點擊“Install package”即可安裝。
如果查詢出的類庫顯示藍色,表示這個類庫已經安裝過了。

按照下面的順序安裝類庫:lxml->zope.interface->pyopenssl->twisted->scrapy。一般情況下Anaconda已經安裝了很多類庫,我們只需安裝scrapy即可。

4、創建scrapy項目

安裝好scrapy類庫之后,就可以創建scrapy項目了,pycharm不能直接創建scrapy項目,必須通過命令行創建,打開pycharm的Terminal終端,輸入scrapy startproject test_scrapy命令,就可以創建名為test_scrapy的scrapy項目,看到如下的信息表示成功創建scrapy項目:

New Scrapy project 'test_scrapy', using template directory 'e:\\Anaconda3\\lib\\site-packages\\scrapy\\templates\\project', created in:
    G:\PycharmProjects\scrapy\test_scrapy

You can start your first spider with:
    cd test_scrapy
    scrapy genspider example example.com

然后在pycharm的項目空間中就可以看到test_scrapy項目的目錄結構:
pycharm scrapy

通過命令行創建scrapy項目時經常會遇到下面的三個坑:
(1)'scrapy' 不是內部或外部命令,也不是可運行的程序或批處理文件。這是因為沒有把Anaconda加入到環境變量中。在安裝scrapy時,會將scrapy.exe文件安裝到Scripts文件夾下面:
pycharm scrapy
如果沒有設置環境變量,將無法找到scrapy.exe文件。

(2)ImportError: DLL load failed: 找不到指定的模塊。 這個問題是因為lxml類庫版本引起的,在window7操作系統會遇到這個問題。我安裝的是4.2.5版本,后來改成3.8.0就解決了。將lxml從4.2.5切換成3.8.0的方法如下:
pycharm scrapy
通過上圖的安裝類庫界面,找到lxml,勾選上Specify version選項,然后選擇3.8.0,點擊“install package”按鈕即可。使用anaconda的好處就是,將lxml切換成3.8.0之后,會把相關的openssl和twisted等類庫也切換成匹配的類庫,因此強烈推薦使用Anaconda安裝python。

(3)ImportError: DLL load failed: 操作系統無法運行 %1。 這個是因為c:/windows/system32目錄中的ssleay32.dll和libeay32.dll沖突導致的,我的做法是刪除掉這個兩個文件,創建好scrapy項目后,在恢復回來。因為刪除這兩個文件會導致某些應用無法運行。在window10操作系統會遇到這個問題。

本文同步發布與:http://www.bigdata17.com/2018/12/20/pythonscrapy.html


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM