scrapy爬蟲 bilibili舞蹈區宅舞部分

2021-10-10 05:36:21 字數 1814 閱讀 1425

import scrapy

import json

from scrapy_01.items import bilibili_danceitem

''' 爬取bilibili舞蹈區宅舞部分,

按照時間排序,抓取一頁20條,100頁用於測試

爬取標題、簡介、作者名字、bv號 其他的沒取。

'''class

bilibilidancespider

(scrapy.spider)

: name =

'bilibili_dance'

allowed_domains =

['bilibili.com'

]##基礎url

baseurl =

""##url偏移量,也就是頁碼

offset =

1#結尾表明一頁20條記錄,如果不寫預設50條

endend =

"&ps=20"

start_urls =

[baseurl+

str(offset)

+endend]

defparse

(self, response)

: items = bilibili_danceitem(

)#把str型別轉換成json格式讀取

#寫出的時候用dumps,轉換成str

string = json.loads(response.body)

['data'][

'archives'

]for s in string:

items[

'title'

]= s[

'title'

]# 簡介

items[

'desc'

]= s[

'desc'

]# 作者名字

items[

'owner_name'

]= s[

'owner'][

'name'

]# bv號

items[

'bvid'

]= s[

'bvid'

]yield items

#爬取100頁

if(self.offset<

100)

: self.offset +=

1 url1 = self.baseurl+

str(self.offset)

+self.endend

#輸出當前處理的url

print

(url1)

yield scrapy.request(url1,callback=self.parse)

# 執行命令 ,因為沒有寫管道檔案,所以使用-o直接儲存為json檔案,用-s儲存為utf-8.--nolog是不輸出日記

scrapy crawl bilibili_dance -o bilibili_dance.json -s feed_export_encoding=utf-8-

-nolog

部分json,下面的json的格式,只讀取的一部分,用於測試

可以進去這個鏈結檢視完整的json

1

,

"owner":,

"stat":,

"dynamic":"",

"cid":252194538,

"dimension":,

"bvid":"bv1ca411j7ls"

},.....

scrapy爬蟲框架

作者經過幾周的python爬蟲實踐之後,深入學習了一下scrapy這個爬蟲框架,現將一些基本知識和 總結整理一下,以備後查。2.scrapy的命令列使用 這部分網上很多部落格都有總結,不需要背,理解會用主要的命令 startproject crawl fetch list genspider.即可,...

scrapy 爬蟲框架

1.安裝 公升級pip版本 pip install upgrade pip 通過pip安裝scrapy框架 pip install scrapy 安裝成功 只執行scrapy 進行測試是否安裝成功 2.scrapy startproject 爬蟲專案名稱 執行此命令,可以生成乙個爬蟲專案 會預先生成...

爬蟲安裝scrapy

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