最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

python爬蟲scrapy框架的梨視頻案例解析

 更新時間:2021年02月20日 09:51:57   作者:小王子愛上玫瑰  
這篇文章主要介紹了python爬蟲scrapy框架的梨視頻案例解析,本文通過實例代碼給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下

之前我們使用lxml對梨視頻網(wǎng)站中的視頻進行了下載,感興趣的朋友點擊查看吧。

下面我用scrapy框架對梨視頻網(wǎng)站中的視頻標題和視頻頁中對視頻的描述進行爬取

在這里插入圖片描述
在這里插入圖片描述

分析:我們要爬取的內容并不在同一個頁面,視頻描述內容需要我們點開視頻,跳轉到新的url中才能獲取,我們就不能在一個方法中去解析我們需要的不同內容

1.爬蟲文件

  • 這里我們可以仿照爬蟲文件中的parse方法,寫一個新的parse方法,可以將新的url的響應對象傳給這個新的parse方法
  • 如果需要在不同的parse方法中使用同一個item對象,可以使用meta參數(shù)字典,將item傳給callback回調函數(shù)
  • 爬蟲文件中的parse需要yield的Request請求,而item則在新的parse方法中使用yield item傳給下一個parse方法或管道文件

import scrapy

# 從items.py文件中導入BossprojectItem類
from bossProject.items import BossprojectItem

class BossSpider(scrapy.Spider):
 name = 'boss'
 # allowed_domains = ['www.xxx.com']
 start_urls = ['https://www.pearvideo.com/category_5']

 # 回調函數(shù)接受響應對象,并且接受傳遞過來的meata參數(shù)
 def content_parse(self,response):
 # meta參數(shù)包含在response響應對象中,調用meta,然后根據(jù)鍵值取出對應的值:item
 item = response.meta['item']

 # 解析視頻鏈接中的對視頻的描述
 des = response.xpath('//div[@class="summary"]/text()').extract()
 des = "".join(des)
 item['des'] = des

 yield item 

 # 解析首頁視頻的標題以及視頻的鏈接
 def parse(self, response):
 li_list = response.xpath('//div[@id="listvideoList"]/ul/li')
 for li in li_list:
  href = li.xpath('./div/a/@href').extract()
   + "".join(href)

  title = li.xpath('./div[1]/a/div[2]/text()').extract()
  title = "".join(title)

  item = BossprojectItem()
  item["title"] = title

  #手動發(fā)送請求,并將響應對象傳給回調函數(shù)
  #請求傳參:meta={},可以將meta字典傳遞給請求對應的回調函數(shù)
  yield scrapy.Request(href,callback=self.content_parse,meta={'item':item})

2.items.py

要將BossprojectItem類導入爬蟲文件中才能夠創(chuàng)建item對象

import scrapy
class BossprojectItem(scrapy.Item):
 # define the fields for your item here like:
 # name = scrapy.Field()
 # 定義了item屬性
 title = scrapy.Field()
 des = scrapy.Field()

3.pipelines.py

open_spider(self,spider)和close_spider(self,spider)重寫這兩個父類方法,且這兩個方法都只執(zhí)行一次在process_item方法中最好保留return item,因為如果存在多個管道類,return item會自動將item對象傳給優(yōu)先級低于自己的管道類

from itemadapter import ItemAdapter
class BossprojectPipeline:

 def __init__(self):
 self.fp = None

 # 重寫父類方法,只調用一次
 def open_spider(self,spider):
 print("爬蟲開始")
 self.fp = open('./lishipin.txt','w')

 # 接受爬蟲文件中yield傳遞來的item對象,將item中的內容持久化存儲
 def process_item(self, item, spider):
 self.fp.write(item['title'] + '\n\t' + item['des'] + '\n')

 # 如果有多個管道類,會將item傳遞給下一個管道類
 # 管道類的優(yōu)先級取決于settings.py中的ITEM_PIPELINES屬性中對應的值
  ## ITEM_PIPELINES = {'bossProject.pipelines.BossprojectPipeline': 300,} 鍵值中的值越小優(yōu)先級越高
 return item

 # 重寫父類方法,只調用一次
 def close_spider(self,spider): 
 self.fp.close()
 print("爬蟲結束")

4.進行持久化存儲

在這里插入圖片描述

到此這篇關于python爬蟲scrapy框架的梨視頻案例解析的文章就介紹到這了,更多相關python爬蟲scrapy框架內容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!

相關文章

  • python實現(xiàn)二分查找算法

    python實現(xiàn)二分查找算法

    這篇文章主要介紹了python如何實現(xiàn)二分查找算法,幫助大家更好的理解和使用python,感興趣的朋友可以了解下。
    2020-09-09
  • python使用pil庫實現(xiàn)圖片合成實例代碼

    python使用pil庫實現(xiàn)圖片合成實例代碼

    這篇文章主要介紹了python PIL實現(xiàn)圖片合成實例代碼,小編覺得還是挺不錯的,具有一定借鑒價值,需要的朋友可以參考下
    2018-01-01
  • python如何將aac轉為mp3,保持原有目錄結構

    python如何將aac轉為mp3,保持原有目錄結構

    使用Python腳本實現(xiàn)AAC格式轉MP3格式的方法介紹,需要用戶輸入AAC文件所在目錄路徑和MP3輸出目錄路徑,通過調用FFmpeg工具實現(xiàn)格式轉換,該腳本簡單易懂,適合需要批量處理音頻文件的用戶,使用前需確保已安裝FFmpeg環(huán)境
    2024-11-11
  • 基于樹莓派的語音對話機器人

    基于樹莓派的語音對話機器人

    這篇文章主要為大家詳細介紹了基于樹莓派的語音對話機器人,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2019-06-06
  • 使用Python生成F分布表并導出為Excel文件的代碼實現(xiàn)

    使用Python生成F分布表并導出為Excel文件的代碼實現(xiàn)

    在統(tǒng)計分析中,F FF分布是一種非常重要的連續(xù)概率分布,廣泛應用于方差分析、回歸分析的顯著性檢驗等場景,為了方便查閱和使用F分布的臨界值,本文給大家介紹了使用Python生成F分布表并導出為Excel文件,需要的朋友可以參考下
    2024-11-11
  • Python實現(xiàn)監(jiān)控屏幕界面內容變化并發(fā)送通知

    Python實現(xiàn)監(jiān)控屏幕界面內容變化并發(fā)送通知

    這篇文章主要為大家詳細介紹了如何利用Python實現(xiàn)實時監(jiān)控屏幕上的信息是否發(fā)生變化并發(fā)送通知,文中的示例代碼講解詳細,感興趣的可以了解一下
    2023-04-04
  • Python+OCR實現(xiàn)文檔解析的示例代碼

    Python+OCR實現(xiàn)文檔解析的示例代碼

    本文是一個簡單教程,主要介紹了如何使用OCR進行文檔解析以及使用Layoutpars軟件包進行了整個檢測和提取過程,感興趣的可以了解一下
    2022-09-09
  • Django學習筆記之為Model添加Action

    Django學習筆記之為Model添加Action

    這篇文章主要介紹了Django給admin添加Action,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2019-04-04
  • 講解Python3中NumPy數(shù)組尋找特定元素下標的兩種方法

    講解Python3中NumPy數(shù)組尋找特定元素下標的兩種方法

    這篇文章主要介紹了講解Python3中NumPy數(shù)組尋找特定元素下標的兩種方法,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2019-08-08
  • Python實現(xiàn)發(fā)送帶有pdf附件的電子郵件

    Python實現(xiàn)發(fā)送帶有pdf附件的電子郵件

    使用Python發(fā)郵件,是個簡單的話題,可是如何可以優(yōu)雅的輕松的群發(fā)郵件,并附加PDF附件,是很多小伙伴的日常工作。本文就來和大家分享一下實現(xiàn)方法,需要的可以參考一下
    2023-02-02

最新評論

开封市| 西贡区| 永安市| 山东| 太原市| 黔西县| 静宁县| 龙川县| 平和县| 岳西县| 拜城县| 徐州市| 仙桃市| 普洱| 临湘市| 定结县| 婺源县| 邯郸县| 绍兴县| 安阳县| 西华县| 武陟县| 湖北省| 渑池县| 龙山县| 临邑县| 惠安县| 鄂托克旗| 临武县| 潜江市| 高邮市| 大港区| 阿拉尔市| 亚东县| 凤阳县| 河间市| 榆中县| 兴义市| 台湾省| 美姑县| 白山市|