Python中怎么實(shí)現(xiàn)一個(gè)scrapy爬蟲,針對這個(gè)問題,這篇文章詳細(xì)介紹了相對應(yīng)的分析和解答,希望可以幫助更多想解決這個(gè)問題的小伙伴找到更簡單易行的方法。
網(wǎng)站建設(shè)哪家好,找創(chuàng)新互聯(lián)建站!專注于網(wǎng)頁設(shè)計(jì)、網(wǎng)站建設(shè)、微信開發(fā)、微信小程序開發(fā)、集團(tuán)企業(yè)網(wǎng)站建設(shè)等服務(wù)項(xiàng)目。為回饋新老客戶創(chuàng)新互聯(lián)還提供了龍港免費(fèi)建站歡迎大家使用!
JAP君在前面也是寫過一些小爬蟲的,其實(shí)那些都是爬蟲文件。在學(xué)習(xí)scrapy之前我們得弄清楚爬蟲文件和爬蟲項(xiàng)目的區(qū)別,其實(shí)也非常容易理解,爬蟲文件顧名思義就是單個(gè)的文件來寫的爬蟲,爬蟲項(xiàng)目顧名思義就是一個(gè)大型的爬蟲畢竟都稱之為項(xiàng)目了,我們大家都知道項(xiàng)目是不可能只有單個(gè)文件的,它是由許多的文件組成并且每個(gè)文件之間有著很大的關(guān)聯(lián)。
scrapy就是這么一個(gè)寫爬蟲項(xiàng)目的框架,怎么去玩它呢?今天JAP君帶著大家一步一步來。
其實(shí)安裝scrapy特別的簡單,就一句話的事。首先同時(shí)按windows鍵+R,然后輸入cmd,最后在cmd中輸入pip install scrapy .
由于JAP君用的是windows10開發(fā)只要這么簡單幾步就行了,但是JAP君從網(wǎng)絡(luò)上也了解到其他的系統(tǒng)安裝也有許多坑,但是win10安裝也可能有坑,當(dāng)然有坑的話可以加我們討論群進(jìn)行解決。
可是很多朋友還是不知道到底有沒有安裝成功,這時(shí)你仍然在cmd窗口輸入scrapy命令,若有如下圖的反應(yīng),那么恭喜你安裝成功,可以好好玩耍了
我們把scrapy安裝成功后,該怎么去用了?沒啥感覺啊!接下來我們就正式開始接觸scrapy了!
其實(shí)我們的scrapy的操作都是通過命令行來進(jìn)行的,有些什么命令呢?
1.scrapy -h (查看所有命令)
從這里我們可以看到scrapy的大部分命令,例如上面的version,我們就可以如下圖輸入:
2.scrapy startproject spider_name (創(chuàng)建一個(gè)項(xiàng)目工程)
這里我要說明一下,我們使用這個(gè)命令之前需要切換到我們自己建的一個(gè)文件夾里,然后再輸入這串命令,就會(huì)在相應(yīng)的文件夾中創(chuàng)建這個(gè)工程。
大家可以看我的命令輸入,我首先是切換到我自己創(chuàng)建的scrapydemo的文件夾中,然后輸入 scrapy startproject ceshi1 ,這個(gè)ceshi1是大家自己定義的。
3.scrapy genspider name domain (構(gòu)建爬蟲)
估計(jì)大家對domain有點(diǎn)懵逼,domain就是你想要爬取的域名,先來看一下一個(gè)例子吧。
大家會(huì)注意到,我使用這個(gè)命令是在我們的項(xiàng)目目錄里面,因?yàn)槲覀兪且谶@個(gè)項(xiàng)目里面去構(gòu)建這個(gè)爬蟲,首先ceshi是我們自己定義的名字,baidu.com是我們要爬取的域名,大家這里估計(jì)又會(huì)疑惑為啥不是http://www.baidu.com?其實(shí)http這個(gè)東西是協(xié)議,而www是屬于萬維網(wǎng)也不是域名的一部分,所以這里我們直接輸入baidu.com即可。
至于這串代碼的具體體現(xiàn),下面我會(huì)說的。
4.scrapy crawl name (運(yùn)行爬蟲,帶log日志)和
scrapy crawl name --nolog (運(yùn)行爬蟲,不帶log日志)
這個(gè)命令咱們到后面來解釋,因?yàn)檫@個(gè)需要我們?nèi)懸粋€(gè)簡單的爬蟲,大家只要記住運(yùn)行爬蟲就用它兩。
通過上面的命令scrapy startproject ceshi1 我們成功的建立了第一個(gè)scrapy爬蟲項(xiàng)目,我們來看看到底有些啥?
ceshi1文件夾就是和我們創(chuàng)建是輸入的名字是相同的
scrapy.cfg:爬蟲項(xiàng)目的配置文件
我們在深入一下ceshi1文件夾
第一個(gè)文件夾:不必多說,一個(gè)緩存文件夾
第二個(gè)文件夾:就是我們爬蟲的代碼所在地
__init__.py:爬蟲項(xiàng)目的初始化文件,用來對項(xiàng)目做初始化工作。
items.py:爬蟲項(xiàng)目的數(shù)據(jù)容器文件,用來定義要獲取的數(shù)據(jù)。
pipelines.py:爬蟲項(xiàng)目的管道文件,用來對items中的數(shù)據(jù)進(jìn)行進(jìn)一步的加工處理。
settings.py:爬蟲項(xiàng)目的設(shè)置文件,包含了爬蟲項(xiàng)目的設(shè)置信息。
middlewares.py:爬蟲項(xiàng)目的中間件文件
然后我們再次深入spiders文件夾
在這里我們發(fā)現(xiàn)了我們之前通過scrapy genspider ceshi baidu.com所生成的ceshi.py的文件。
其實(shí)這個(gè)項(xiàng)目我們可以用pycharm進(jìn)行打開并且可以用pycharm進(jìn)行編寫項(xiàng)目,下次帶大家實(shí)戰(zhàn)一個(gè)項(xiàng)目的時(shí)候會(huì)看到的。
關(guān)于Python中怎么實(shí)現(xiàn)一個(gè)scrapy爬蟲問題的解答就分享到這里了,希望以上內(nèi)容可以對大家有一定的幫助,如果你還有很多疑惑沒有解開,可以關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道了解更多相關(guān)知識。
分享題目:Python中怎么實(shí)現(xiàn)一個(gè)scrapy爬蟲
網(wǎng)頁鏈接:http://muchs.cn/article8/piojip.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供搜索引擎優(yōu)化、全網(wǎng)營銷推廣、網(wǎng)頁設(shè)計(jì)公司、動(dòng)態(tài)網(wǎng)站、網(wǎng)站策劃、網(wǎng)站導(dǎo)航
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)