爬蟲scrapy的使用與安裝

2022-05-25 10:36:13 字數 2533 閱讀 6882

一.什麼是scrapy?

二.安裝

linux:

pip3 install scrapy

windows:

a. pip3 install wheel

//www.lfd.uci.edu/~gohlke/pythonlibs/#twisted

17.1.0‑cp35‑cp35m‑win_amd64.whl

d. pip3 install pywin32

e.pip3 install scrapy

三.基礎使用

1.建立專案:scrapy startproject 專案名稱

專案結構:

scrapy.cfg:

project_name/

__init__.py

items.py

pipelines.py

settings.py

spiders/

__init__.py

scrapy.cfg 專案的主配置資訊。(真正爬蟲相關的配置資訊在settings.py檔案中)

items.py 設定資料儲存模板,用於結構化資料,如:django的model

pipelines 資料持久化處理

spiders 爬蟲目錄,如:建立檔案,編寫爬蟲解析規則

2.建立爬蟲應用程式:

cd project_name(進入專案目錄)

scrapy genspider 應用名稱 爬取網頁的起始url (例如:scrapy genspider qiubai www.qiushibaike.com)

3.編寫爬蟲檔案:在步驟2執行完畢後,會在專案的spiders中生成乙個應用名的py爬蟲檔案,檔案原始碼如下:

import scrapy

class qiubaispider(scrapy.spider):

name = 'qiubai' #應用名稱

#允許爬取的網域名稱(如果遇到非該網域名稱的url則爬取不到資料)

allowed_domains = ['']

#起始爬取的url

start_urls = ['']

#訪問起始url並獲取結果後的**函式,該函式的response引數就是向起始的url傳送請求後,獲取的響應物件.該函式返回值必須為可迭代物件或者null

def parse(self, response):

print(response.text) #獲取字串型別的響應內容

print(response.body)#獲取位元組型別的相應內容

4.設定修改settings.py配置檔案相關配置:

22行:robotstxt_obey = false #可以忽略或者不遵守robots協議

5.執行爬蟲程式:scrapy crawl  應用名稱

四.小試牛刀:將糗百首頁中段子的內容和標題進行爬取

import scrapy

class qiubaispider(scrapy.spider):

name = 'qiubai'

allowed_domains = ['']

start_urls = ['']

def parse(self, response):

#xpath為response中的方法,可以將xpath表示式直接作用於該函式中

odiv = response.xpath('//div[@id="content-left"]/div')

content_list = #用於儲存解析到的資料

for div in odiv:

#xpath函式返回的為列表,列表中存放的資料為selector型別的資料。我們解析到的內容被封裝在了selector物件中,需要呼叫extract()函式將解析的內容從selecor中取出。

author = div.xpath('.//div[@class="author clearfix"]/a/h2/text()')[0].extract()

content=div.xpath('.//div[@class="content"]/span/text()')[0].extract()

#將解析到的內容封裝到字典中

dic=

#將資料儲存到content_list這個列表中

return content_list

執行爬蟲程式:

scrapy crawl 爬蟲名稱 --nolog:該種執行形式不會顯示執行的日誌資訊

爬蟲安裝scrapy

scrapy框架結構清晰,基於twisted的非同步架構可以充分利用計算機資源,是爬蟲做大的必備基礎。本文將講解如何快速安裝此框架並使用起來。2.1 同安裝lxml庫 2.2 安裝twisted 開啟命令提示符視窗,輸入命令 twisted庫安裝成功後,安裝scrapy就簡單了,在命令提示符視窗直接...

python爬蟲關於scrapy的安裝與簡述

scrapy是乙個為了爬取 資料,提取結構性資料而編寫的應用框架。可以應用在包括資料探勘,資訊處理或儲存歷史資料等 scrapy的安裝方式有多種,本身所需要的依賴的庫也比較多,由於同眾人一樣用的主流3.幾版本的py和windows平台,所以簡介下在windows平台的安裝過程 1.如果本身是在ana...

python爬蟲框架 scrapy 的安裝與使用

1.windows 下 scrapy 的安裝 1.wheel pip3 install wheel 2.lxml 3.pyopenssl 4.twisted 5.pywin32 6.scrapy pip3 install scrapy 2.scrapy 的基本執行測試 按照下圖的步驟輸入,如果最後沒...