中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

如何用Scrapy抓取網頁

發布時間:2021-12-04 19:33:56 來源:億速云 閱讀:301 作者:柒染 欄目:大數據

這篇文章將為大家詳細講解有關如何用Scrapy抓取網頁,文章內容質量較高,因此小編分享給大家做個參考,希望大家閱讀完這篇文章后對相關知識有一定的了解。

Scrapy是一種快速的高級Web爬蟲和Web抓取框架,用于抓取網站并從其頁面中提取結構化數據。它可用于各種用途,從數據挖掘到監控和自動化測試。

老規矩,使用前先用pip install scrapy進行安裝,如果安裝過程中遇到錯誤一般為error:Microsoft Visual C++ 14.0 is required. 只需要訪問https://www.lfd.uci.edu/~gohlke/pythonlibs/#twisted網站下載Twisted-19.2.1-cp37-cp37m-win_amd64安裝即可,注意cp37代表的是我本機python的版本3.7 amd64代表我的操作系統位數。

安裝使用 pip install Twisted-19.2.1-cp37-cp37m-win_amd64.whl即可,然后在重新安裝scrapy就會成功安裝了;安裝成功后我們就可以使用scrapy命令進行創建爬蟲項目了。

接下來在我的桌面運行cmd命令,使用 scrapy startproject webtutorial創建項目:

如何用Scrapy抓取網頁

會在桌面生成一個webtutorial文件夾,我們看下目錄結構:

如何用Scrapy抓取網頁

然后我們在spiders文件夾下新建一個quotes_spider.py,編寫一個爬蟲用來爬取http://quotes.toscrape.com網站保存為一個html文件,網站截圖如下:

如何用Scrapy抓取網頁

代碼如下:

import scrapy
#定義爬蟲類class QuotesSpider(scrapy.Spider):    #指定爬蟲名字 一會要用到    name = "quotes"    #開始請求方法    def start_requests(self):        urls = [                'http://quotes.toscrape.com/page/1/',                'http://quotes.toscrape.com/page/2/']        for url in urls:            yield scrapy.Request(url=url, callback=self.parse)#解析寫入返回內容到html中    def parse(self, response):        page = response.url.split("/")[-2]        filename = 'quotes-%s.html' % page        with open(filename, 'wb') as f:            f.write(response.body)        self.log('Saved file %s' % filename)

之后的目錄結構為:

如何用Scrapy抓取網頁

然后我們在命令行中切換到webtutorial文件夾下,執行命令scrapy crawl quotes進行抓取(quotes為剛才指定的爬蟲名):

如何用Scrapy抓取網頁

如何用Scrapy抓取網頁

發現出錯了,No module named  'win32api',這里我們安裝一下win32api

使用命令 pip install pypiwin32,然后繼續執行scrapy crawl quotes:

如何用Scrapy抓取網頁

可知爬蟲任務成功執行,這時會在webtutorial文件夾下生成兩個html:

如何用Scrapy抓取網頁

關于如何用Scrapy抓取網頁就分享到這里了,希望以上內容可以對大家有一定的幫助,可以學到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

凉城县| 太湖县| 石柱| 和龙市| 尼勒克县| 汨罗市| 瑞丽市| 洛浦县| 花垣县| 曲沃县| 盐津县| 华容县| 桦南县| 云南省| 阳东县| 鄯善县| 吉林省| 定陶县| 腾冲县| 旌德县| 井研县| 昭苏县| 历史| 深泽县| 宜丰县| 昌宁县| 志丹县| 徐水县| 手游| 来宾市| 南京市| 霍邱县| 金昌市| 东乌珠穆沁旗| 合肥市| 曲阜市| 吉安市| 康平县| 杂多县| 泰兴市| 从化市|