Scrapy入門 環境安裝及demo執行

2021-10-20 11:19:04 字數 1552 閱讀 3172

執行環境:win10、python3.6.5、vscode

python環境的安裝本文不再贅述

下面通過pip命令安裝scrapy環境。在vscode上新建乙個終端,終端上鍵入命令「pip install scrapy」,pip會自動收集依賴的庫資訊,並依次安裝

筆者在執行過程中遇到了兩個問題,乙個是編碼問題,可以通過chcp命令改變終端的編碼來臨時解決。乙個是缺少openssl的標頭檔案,可以通過執行「pip install pyopenssl」來解決,安裝openssl後,重新執行「pip install scrapy」

安裝完成後,鍵入「scrapy」命令,出現如下圖所示的輸出,即表示安裝成功

首先,我們通過命令「scrapy startproject baiduspider」來建立乙個新專案,命令會自動建立如下圖所示的專案檔案模板。

通過命令「scrapy genspider baiduspider baidu.com」,第三個引數baiduspider是爬蟲主體的檔名,第4個引數baidu.com是指定了爬蟲搜尋的爬取域。

檢視原始碼,ul標籤的id屬性等於「hot-list」可以作為熱榜的標識,故我們可以通過以下xpath語句進行識別讀取,「//ul[@id=』hot-list』]/li[3]/a/@title」。我們可以先在控制台中試下語句的正確性。

語句沒有問題,我們開始編寫解析的邏輯**,如下:

通過命令「scrapy crawl baiduspider」執行指令碼,發現未輸出抓取到的內容,檢視輸出得知是被robots.txt擋住了,這是乙個防爬蟲協議,我們可以在settings.py裡面設定不遵守robots協議。即設定robotstxt_obey = false

設定完成後,繼續執行執行指令碼,即可獲取實時熱榜中前10的資訊。我們還可以在執行命令中增加-o [filename]選項來支援將內容輸出到檔案。比如「scrapy crawl baiduspider -o baidu.csv」 將結果儲存到檔案baidu.csv

ExtJS入門 環境搭建

extjs是一種主要用於建立前端使用者介面,是乙個基本與後台技術無關的前端ajax框架。一 引入類庫檔案 extjs類庫介紹 adapter 負責將裡面提供第三方底層庫 包括ext 自帶的底層庫 對映為ext 所支援的底層庫。build 壓縮後的ext 全部原始碼 裡面分類存放 docs api 幫...

vue入門環境搭建

最近,vue.js越來越火。在這樣的大浪潮下,我也開始進入vue的學習行列中,在網上也搜了很多教程,按著教程來做,也總會出現這樣那樣的問題 坑啊,由於網上那些教程都是vue.js 1.x版本的,現在用vue.js 的構建工具都已經公升級到2.0版本了 經過了一段時間的摸索和看官方的教程和api,才了...

Pig入門 環境搭建

pig入門 環境搭建 本文介紹在linux redhat hadoop2.2.0 jdk1.7的環境下安裝pig 0.14.0.二 安裝及配置 1 解壓至安裝目錄 比如 tar zxvf pig 0.14.0.tar.gz c itcast 2 配置 編輯 bash profile檔案 新增 exp...