av一区二区在线观看_亚洲男人的天堂网站_日韩亚洲视频_在线成人免费_欧美日韩精品免费观看视频_久草视

您的位置:首頁技術文章
文章詳情頁

Python scrapy爬取小說代碼案例詳解

瀏覽:10日期:2022-07-18 09:56:43

scrapy是目前python使用的最廣泛的爬蟲框架

架構圖如下

Python scrapy爬取小說代碼案例詳解

解釋:

Scrapy Engine(引擎): 負責Spider、ItemPipeline、Downloader、Scheduler中間的通訊,信號、數據傳遞等。 Scheduler(調度器): 它負責接受引擎發送過來的Request請求,并按照一定的方式進行整理排列,入隊,當引擎需要時,交還給引擎。 Downloader(下載器):負責下載Scrapy Engine(引擎)發送的所有Requests請求,并將其獲取到的Responses交還給Scrapy Engine(引擎),由引擎交給Spider來處理, Spider(爬蟲):它負責處理所有Responses,從中分析提取數據,獲取Item字段需要的數據,并將需要跟進的URL提交給引擎,再次進入Scheduler(調度器), Item Pipeline(管道):它負責處理Spider中獲取到的Item,并進行進行后期處理(詳細分析、過濾、存儲等)的地方. DownloaderMiddlewares(下載中間件):你可以當作是一個可以自定義擴展下載功能的組件。Spider Middlewares(Spider中間件):你可以理解為是一個可以自定擴展和操作引擎和Spider中間通信的功能組件(比如進入Spider的Responses;和從Spider出去的Requests

一。安裝

pip install Twisted.whl

pip install Scrapy

Twisted的版本要與安裝的python對應,https://jingyan.baidu.com/article/1709ad8027be404634c4f0e8.html

二。代碼

本實例采用xpaths解析頁面數據

按住shift-右鍵-在此處打開命令窗口

輸入scrapy startproject qiushibaike 創建項目

輸入scrapy genspiderqiushibaike 創建爬蟲

1>結構

Python scrapy爬取小說代碼案例詳解

2>qiushibaike.py爬蟲文件

import scrapyfrom scrapy.linkextractors import LinkExtractorfrom scrapy.spiders.crawl import Rule, CrawlSpiderclass BaiduSpider(CrawlSpider): name = ’qiushibaike’ allowed_domains = [’qiushibaike.com’] start_urls = [’https://www.qiushibaike.com/text/’]#啟始頁面# rules= ( Rule(LinkExtractor(restrict_xpaths=r’//a[@class='contentHerf']’),callback=’parse_item’,follow=True), Rule(LinkExtractor(restrict_xpaths=r’//ul[@class='pagination']/li/a’),follow=True) ) def parse_item(self, response): title=response.xpath(’//h1[@class='article-title']/text()’).extract_first().strip() #標題 time=response.xpath(’ //span[@class='stats-time']/text()’).extract_first().strip() #發布時間 content=response.xpath(’//div[@class='content']/text()’).extract_first().replace(’’,’n’) #內容 score=response.xpath(’//i[@class='number']/text()’).extract_first().strip() #好笑數 yield({'title':title,'content':content,'time':time,'score':score});

3>pipelines.py 數據管道[code]class QiushibaikePipeline:

class QiushibaikePipeline: def open_spider(self,spider):#啟動爬蟲中調用 self.f=open('xiaoshuo.txt','w',encoding=’utf-8’) def process_item(self, item, spider): info=item.get('title')+'n'+ item.get('time')+' 好笑數'+item.get('score')+'n'+ item.get('content')+’n’ self.f.write(info+'n') self.f.flush() def close_spider(self,spider):#關閉爬蟲中調用 self.f.close()

4>settings.py

開啟ZhonghengPipeline

ITEM_PIPELINES = { ’qiushibaike.pipelines.QiushibaikePipeline’: 300,}

5>0main.py運行

from scrapy.cmdline import executeexecute(’scrapy crawl qiushibaike’.split())

6>結果:

生成xiaohua.txt,里面有下載的笑話文字

Python scrapy爬取小說代碼案例詳解

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持好吧啦網。

標簽: Python 編程
相關文章:
主站蜘蛛池模板: 久久免费精品视频 | 成人欧美在线 | 久久伊人免费视频 | 亚洲欧美国产毛片在线 | 欧美精品一二三 | 日韩精品亚洲专区在线观看 | 欧美激情在线精品一区二区三区 | 精品视频一二区 | 狠狠干天天干 | 亚洲精品久久久一区二区三区 | 精品久久久久久亚洲综合网 | 国产欧美一区二区三区日本久久久 | 81精品国产乱码久久久久久 | 国产在线h| 国产一区二区三区免费观看视频 | 欧美精品一区二区三区在线播放 | 中文字幕在线一区 | 欧美精品在线播放 | 午夜在线影院 | 国产精品视频在线播放 | 91麻豆久久久 | 一区二区三区久久久 | 久久综合一区 | 蜜桃在线视频 | 亚洲欧美日韩国产 | 久久男人 | 99精品网| av电影一区二区 | 国产精品久久久久久久久久免费 | 日本精品视频 | 国产精品网址 | 中文字幕蜜臀av | 2一3sex性hd| 欧美一区二区三区精品 | 亚洲一区在线日韩在线深爱 | 亚洲国产成人精品女人久久久 | 久久久做| 91亚洲精选| 日韩在线 | av中文天堂| 日韩视频在线免费观看 |