pycharm創(chuàng)建scrapy項(xiàng)目教程及遇到的坑解析
前言
最近學(xué)習(xí)scrapy爬蟲框架,在使用pycharm安裝scrapy類庫(kù)及創(chuàng)建scrapy項(xiàng)目時(shí)花費(fèi)了好長(zhǎng)的時(shí)間,遇到各種坑,根據(jù)網(wǎng)上的各種教程,花費(fèi)了一晚上的時(shí)間,終于成功,其中也踩了一些坑,現(xiàn)在整理下相關(guān)教程,希望幫助那些遇到和我一樣問題的碼農(nóng)。
1、環(huán)境
- 操作系統(tǒng):windows10。
- python版本:python3.7,必須使用Anaconda,目前是Anaconda5.3.1。下載地址:https://www.anaconda.com/download/ 下載64位的安裝包。scrapy依賴的類庫(kù)比較多,使用Anaconda會(huì)將相關(guān)的依賴的類庫(kù)都安裝好,并且版本保持一致。
- pycharm:pycharm2018。
2、安裝Anaconda
安裝好Anaconda之后,將下面的變量加入到系統(tǒng)環(huán)境變量中:
e:\Anaconda3;e:\Anaconda3\Library\mingw-w64\bin;e:\Anaconda3\Library\usr\bin;e:\Anaconda3\Library\bin;e:\Anaconda3\Scripts;
上面是我本機(jī)上的環(huán)境變量,我是將Anaconda3安裝在E盤的Anaconda3文件夾中。
3、安裝scrapy相關(guān)類庫(kù)
打開pycharm,創(chuàng)建一個(gè)項(xiàng)目,然后開始安裝相關(guān)的類庫(kù)。通過下面的方式查找類庫(kù),點(diǎn)擊左上角的File按鈕,會(huì)彈出如下的界面:
點(diǎn)擊Settings按鈕,會(huì)彈出下面的菜單:
然后點(diǎn)擊右邊的“+”,就會(huì)彈出安裝類庫(kù)的界面:
在上圖中查詢類庫(kù),然后點(diǎn)擊“Install package”即可安裝。
如果查詢出的類庫(kù)顯示藍(lán)色,表示這個(gè)類庫(kù)已經(jīng)安裝過了。
按照下面的順序安裝類庫(kù):lxml->zope.interface->pyopenssl->twisted->scrapy。一般情況下Anaconda已經(jīng)安裝了很多類庫(kù),我們只需安裝scrapy即可。
4、創(chuàng)建scrapy項(xiàng)目
安裝好scrapy類庫(kù)之后,就可以創(chuàng)建scrapy項(xiàng)目了,pycharm不能直接創(chuàng)建scrapy項(xiàng)目,必須通過命令行創(chuàng)建,打開pycharm的Terminal終端,輸入scrapy startproject test_scrapy命令,就可以創(chuàng)建名為test_scrapy的scrapy項(xiàng)目,看到如下的信息表示成功創(chuàng)建scrapy項(xiàng)目:
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的項(xiàng)目空間中就可以看到test_scrapy項(xiàng)目的目錄結(jié)構(gòu):
通過命令行創(chuàng)建scrapy項(xiàng)目時(shí)經(jīng)常會(huì)遇到下面的三個(gè)坑:
(1)'scrapy' 不是內(nèi)部或外部命令,也不是可運(yùn)行的程序或批處理文件。這是因?yàn)闆]有把Anaconda加入到環(huán)境變量中。在安裝scrapy時(shí),會(huì)將scrapy.exe文件安裝到Scripts文件夾下面:
如果沒有設(shè)置環(huán)境變量,將無(wú)法找到scrapy.exe文件。
(2)ImportError: DLL load failed: 找不到指定的模塊。 這個(gè)問題是因?yàn)閘xml類庫(kù)版本引起的,在window7操作系統(tǒng)會(huì)遇到這個(gè)問題。我安裝的是4.2.5版本,后來(lái)改成3.8.0就解決了。將lxml從4.2.5切換成3.8.0的方法如下:
通過上圖的安裝類庫(kù)界面,找到lxml,勾選上Specify version選項(xiàng),然后選擇3.8.0,點(diǎn)擊“install package”按鈕即可。使用anaconda的好處就是,將lxml切換成3.8.0之后,會(huì)把相關(guān)的openssl和twisted等類庫(kù)也切換成匹配的類庫(kù),因此強(qiáng)烈推薦使用Anaconda安裝python。
(3)ImportError: DLL load failed: 操作系統(tǒng)無(wú)法運(yùn)行 %1 。 這個(gè)是因?yàn)閏:/windows/system32目錄中的ssleay32.dll和libeay32.dll沖突導(dǎo)致的,我的做法是刪除掉這個(gè)兩個(gè)文件,創(chuàng)建好scrapy項(xiàng)目后,在恢復(fù)回來(lái)。因?yàn)閯h除這兩個(gè)文件會(huì)導(dǎo)致某些應(yīng)用無(wú)法運(yùn)行。在window10操作系統(tǒng)會(huì)遇到這個(gè)問題。
以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
- python使用Pycharm創(chuàng)建一個(gè)Django項(xiàng)目
- 使用PyCharm創(chuàng)建Django項(xiàng)目及基本配置詳解
- Pycharm創(chuàng)建項(xiàng)目時(shí)如何自動(dòng)添加頭部信息
- 在pycharm創(chuàng)建scrapy項(xiàng)目的實(shí)現(xiàn)步驟
- Pycharm創(chuàng)建Django項(xiàng)目示例實(shí)踐
- 使用Pycharm為項(xiàng)目創(chuàng)建一個(gè)虛擬環(huán)境完整圖文教程
- PyCharm創(chuàng)建第一個(gè)Python項(xiàng)目的圖文步驟
相關(guān)文章
解決python "No module named pip"的問題
今天小編就為大家分享一篇解決python "No module named pip"的問題。具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來(lái)看看吧2018-10-10Pandas數(shù)據(jù)結(jié)構(gòu)詳細(xì)說(shuō)明及如何創(chuàng)建Series,DataFrame對(duì)象方法
本篇文章中,我們主要側(cè)重于介紹Pandas數(shù)據(jù)結(jié)構(gòu)本身的特性,以及如何創(chuàng)建一個(gè)Series或者DataFrame數(shù)據(jù)對(duì)象,并填入一些數(shù)據(jù)2021-10-10python 如何將兩個(gè)實(shí)數(shù)矩陣合并為一個(gè)復(fù)數(shù)矩陣
這篇文章主要介紹了使用python實(shí)現(xiàn)將兩個(gè)實(shí)數(shù)矩陣合并為一個(gè)復(fù)數(shù)矩陣的操作,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。2021-05-05Python構(gòu)建XML樹結(jié)構(gòu)的方法示例
這篇文章主要介紹了Python構(gòu)建XML樹結(jié)構(gòu)的方法,結(jié)合實(shí)例形式分析了Python創(chuàng)建與打印xml數(shù)結(jié)構(gòu)的實(shí)現(xiàn)步驟與相關(guān)操作技巧,需要的朋友可以參考下2017-06-06詳解利用Python scipy.signal.filtfilt() 實(shí)現(xiàn)信號(hào)濾波
這篇文章主要介紹了詳解利用Python scipy.signal.filtfilt() 實(shí)現(xiàn)信號(hào)濾波,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來(lái)看看吧2019-06-06開啟Django博客的RSS功能的實(shí)現(xiàn)方法
這篇文章主要介紹了開啟Django博客的RSS功能的實(shí)現(xiàn)方法,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2020-02-02