日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

scrapy架构

發布時間:2023/12/8 编程问答 31 豆豆
生活随笔 收集整理的這篇文章主要介紹了 scrapy架构 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

Scrapy是一個快速功能強大的網絡爬蟲框架

scrapy的安裝

pip install scrapy

構架結構

5+2結構
1.Engine
(1) 控制所有模塊之間的數據流
(2) 根據條件觸發事件
不需要用戶修改
2.Downloader
根據請求下載網頁
不需要用戶修改
3.Scheduler
對所有爬取請求進行調度管理
不需要用戶修改
4.Downloader Middleware
目的:實施Engine、Scheduler和Downloader
之間進行用戶可配置的控制
功能:修改、丟棄、新增請求或響應
用戶可以編寫配置代碼
5.Spider
(1) 解析Downloader返回的響應(Response)
(2) 產生爬取項(scraped item)
(3) 產生額外的爬取請求(Request) “5+2”結構
需要用戶編寫配置代碼
6.Item Pipelines
(1) 以流水線方式處理Spider產生的爬取項
(2) 由一組操作順序組成,類似流水線,每個操
作是一個Item Pipeline類型
(3) 可能操作包括:清理、檢驗和查重爬取項中
的HTML數據、將數據存儲到數據庫
需要用戶編寫配置代碼
7.Spider Middleware
目的:對請求和爬取項的再處理
功能:修改、丟棄、新增請求或爬取項
用戶可以編寫配置代碼

requests 與 scrapy的比較

相同點:
兩者都可以進行頁面請求和爬取,Python爬蟲的兩個重要技術路線
兩者可用性都好,文檔豐富,入門簡單
兩者都沒有處理js、提交表單、應對驗證碼等功能(可擴展)
不同點:
左為requests,右為scrapy

如何選擇:
非常小的需求,requests庫
不太小的需求,Scrapy框架
定制程度很高的需求(不考慮規模),自搭框架,requests > Scrapy

scrapy 常用命令


1.創建一個名為BaiduStocks的項目:scrapy startproject BaiduStocks
進入相關的工程區域:cd BaiduStocks
創建一個名為stocks的爬蟲:scrapy genspider stocks baidu.com
2.配置stocks.py 文件

parse()用于處理響應,解析內容形成字典,發現新的URL爬取請求
3.編寫piplines.py文件

4.編寫好后還需要在settings.py文件中加上

5.執行程序,回到命令行
scrapy crawl stocks

配置并發連接選項

settings.py文件

總結

以上是生活随笔為你收集整理的scrapy架构的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。