用scrapy框架爬取映客直播使用者頭像

2021-09-08 13:41:08 字數 1624 閱讀 2433

1. 建立專案 scrapy startproject yingke cd yingke

2. 建立爬蟲  scrapy genspider live

3. 分析網頁的response,找到響應裡面資料的規律,並找到的位置,通過response.xpath()獲取到

4. 通過在pipline裡面進行資料的清洗,過濾,儲存

6. 執行爬蟲 scrapy crawl live

#

-*- coding: utf-8 -*-

import

scrapy

import

reclass

livespider(scrapy.spider):

name = '

live

'allowed_domains = ['

inke.cn']

start_urls = ['

?page=1']

defparse(self, response):

div_list = response.xpath("

//div[@class='list_box']")

for div in

div_list:

item ={}

img_src = div.xpath("

./div[@class='list_pic']/a/img/@src

").extract_first()

item[

"user_name

"] =div.xpath(

"./div[@class='list_user_info']/span[@class='list_user_name']/text()

").extract_first()

print(item["

user_name"])

yield scrapy.request( #

傳送詳情頁的請求

img_src,

callback=self.parse_img,

meta=

)# now_page = re.findall("

page=(.*)

", response.request.url)[0]

now_page=int(now_page)

next_url = "

?page={}

".format(str(now_page+ 1))

yield

scrapy.request(

next_url,

callback=self.parse

)defparse_img(self, response):

user_name = response.meta["

item

"]["

user_name"]

with open(

"images/{}.png

".format(user_name), "wb"

) as f:

f.write(response.body)

執行效果:

scrapy框架全站資料爬取

每個 都有很多頁碼,將 中某板塊下的全部頁碼對應的頁面資料進行爬取 實現方式有兩種 1 將所有頁面的url新增到start urls列表 不推薦 2 自行手動進行請求傳送 推薦 yield scrapy.request url,callback callback專門用做於資料解析 下面我們介紹第二種...

scrapy框架爬取王者榮耀面板

建立專案命令 scrapy startproject wangzhephotomax 建立爬蟲 scrapy genspider wangzhecrawl 更改settings.py中的設定 user agent obey robots.txt rules robotstxt obey false ...

scrapy框架爬取豆瓣讀書(1)

scrapy,python開發的乙個快速 高層次的螢幕抓取和web抓取框架,用於抓取web站點並從頁面中提取結構化的資料。scrapy用途廣泛,可以用於資料探勘 監測和自動化測試。scrapy吸引人的地方在於它是乙個框架,任何人都可以根據需求方便的修改。它也提供了多種型別爬蟲的基類,如basespi...