国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

python爬蟲進階篇:Scrapy中使用Selenium模擬Firefox火狐瀏覽器爬取網(wǎng)頁信息

這篇具有很好參考價值的文章主要介紹了python爬蟲進階篇:Scrapy中使用Selenium模擬Firefox火狐瀏覽器爬取網(wǎng)頁信息。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點擊"舉報違法"按鈕提交疑問。

一、前言

接著上一篇的筆記,Scrapy爬取普通無反爬、靜態(tài)頁面的網(wǎng)頁時可以順利爬取我們要的信息。但是大部分情況下我們要的數(shù)據(jù)所在的網(wǎng)頁它是動態(tài)加載出來的(ajax請求后傳回前端頁面渲染、js調(diào)用function等)。這種情況下需要使用selenium進行模擬人工操作瀏覽器行為,實現(xiàn)自動化采集動態(tài)網(wǎng)頁數(shù)據(jù)。

二、環(huán)境搭建

  • Scrapy框架的基本依賴包(前幾篇有記錄)
  • selenium依賴包
    • pip install selenium==4.0.0a6.post2
    • pip install certifi
    • pip install urllib3==1.25.11
  • 安裝Firefox瀏覽器和對應(yīng)版本的驅(qū)動包
    • 火狐瀏覽器我用的是最新版121.0
    • 驅(qū)動的版本為0.3.0,見上方資源鏈接
    • 把驅(qū)動放到python環(huán)境的Scripts文件夾下

三、代碼實現(xiàn)

  • settings設(shè)置
SPIDER_MIDDLEWARES = {
   'stock_spider.middlewares.StockSpiderSpiderMiddleware': 543,
}

DOWNLOADER_MIDDLEWARES = {
   'stock_spider.middlewares.StockSpiderDownloaderMiddleware': 543,
}

ITEM_PIPELINES = {
   'stock_spider.pipelines.StockSpiderPipeline': 300,
}
  • middlewares中間件
from selenium.webdriver.firefox.options import Options as firefox_options


spider.driver = webdriver.Firefox(options=firefox_options())  # 指定使用的瀏覽器
  • process_request
    def process_request(self, request, spider):
        # Called for each request that goes through the downloader
        # middleware.

        # Must either:
        # - return None: continue processing this request
        # - or return a Response object
        # - or return a Request object
        # - or raise IgnoreRequest: process_exception() methods of
        #   installed downloader middleware will be called

        spider.driver.get("http://www.baidu.com")
        return None
  • process_response
	from scrapy.http import HtmlResponse
    def process_response(self, request, response, spider):
        # Called with the response returned from the downloader.

        # Must either;
        # - return a Response object
        # - return a Request object
        # - or raise IgnoreRequest
        response_body = spider.driver.page_source

        return HtmlResponse(url=request.url, body=response_body, encoding='utf-8', request=request)

啟動爬蟲后就可以看到爬蟲啟動了瀏覽器驅(qū)動,接下來就可以實現(xiàn)各種模擬人工操作了文章來源地址http://www.zghlxwxcb.cn/news/detail-765925.html

到了這里,關(guān)于python爬蟲進階篇:Scrapy中使用Selenium模擬Firefox火狐瀏覽器爬取網(wǎng)頁信息的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實不符,請點擊違法舉報進行投訴反饋,一經(jīng)查實,立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費用

相關(guān)文章

  • 免費 Selenium各大瀏覽器驅(qū)動【谷歌chrme、火狐Firefox、IE瀏覽器】

    免費 Selenium各大瀏覽器驅(qū)動【谷歌chrme、火狐Firefox、IE瀏覽器】

    aardio群 625494397 廢話不多說 直接開整! 竟然還有臉收費 服了 下載對應(yīng)版本的瀏覽器驅(qū)動 目標(biāo)網(wǎng)址 應(yīng)用場景 Selenium庫涉及到 安裝selenium庫 下載對應(yīng)瀏覽器驅(qū)動 找到瀏覽器對應(yīng)版本 最后直接上代碼

    2024年02月16日
    瀏覽(92)
  • python爬蟲實戰(zhàn) scrapy+selenium爬取動態(tài)網(wǎng)頁

    python爬蟲實戰(zhàn) scrapy+selenium爬取動態(tài)網(wǎng)頁

    最近學(xué)習(xí)了scrapy爬蟲框架,想要找個目標(biāo)練練手。由于現(xiàn)在很多網(wǎng)頁都是動態(tài)的,因此還需要配合selenium爬取。本文旨在記錄這次學(xué)習(xí)經(jīng)歷,如有疑問或不當(dāng)之處,可以在評論區(qū)指出,一起學(xué)習(xí)。 對scrapy不了解的同學(xué)可以閱讀這篇文章 爬蟲框架 Scrapy 詳解,對scrapy框架介紹的

    2024年02月07日
    瀏覽(51)
  • Python爬蟲-使用Selenium模擬百度登錄

    Python爬蟲-使用Selenium模擬百度登錄

    ? ? 前面我已經(jīng)安裝好了Selenium并模擬成功了一下打開百度頁面并進行查詢,讓我這個python初學(xué)者信心倍增,今天再來試一試百度登錄 把打開百度的代碼放到構(gòu)造方法中 ps:那個文件目錄是用于后面滑塊驗證圖片保存的。 點擊右上角的“登錄”按鈕,打開登錄框, 代碼如下:

    2024年02月06日
    瀏覽(26)
  • 使用Scrapy框架集成Selenium實現(xiàn)高效爬蟲

    在網(wǎng)絡(luò)爬蟲的開發(fā)中,有時候我們需要處理一些JavaScript動態(tài)生成的內(nèi)容或進行一些復(fù)雜的操作,這時候傳統(tǒng)的基于請求和響應(yīng)的爬蟲框架就顯得力不從心了。為了解決這個問題,我們可以使用Scrapy框架集成Selenium來實現(xiàn)高效的爬蟲。 Scrapy是一個使用Python編寫的開源網(wǎng)絡(luò)爬蟲框

    2024年02月09日
    瀏覽(22)
  • 爬蟲進階之selenium模擬瀏覽器

    爬蟲進階之selenium模擬瀏覽器

    Selenium是一個用于自動化瀏覽器操作的工具,通常用于Web應(yīng)用測試。然而,它也可以用作爬蟲,通過模擬用戶在瀏覽器中的操作來提取網(wǎng)頁數(shù)據(jù)。以下是有關(guān)Selenium爬蟲的一些基本介紹: 瀏覽器自動化: Selenium允許你通過編程方式控制瀏覽器的行為,包括打開網(wǎng)頁、點擊按鈕

    2024年01月20日
    瀏覽(105)
  • 在scrapy 使用selenium模擬登錄獲取cookie

    在scrapy 使用selenium模擬登錄獲取cookie

    前言 最近有一點點爬蟲需求,想總結(jié)一下scrapy框架的一些基本使用方法,加深印象,自己一直習(xí)慣使用一些腳本文件運行爬蟲,面對數(shù)據(jù)量非常大,穩(wěn)定性要求比較高的,效率需求比較高的情況下還是用scrapy較為合適,scrapy是一個異步的框架,所有的請求都是阻塞的,雖然在

    2024年02月11日
    瀏覽(24)
  • 爬蟲學(xué)習(xí) Scrapy中間件&代理&UA隨機&selenium使用

    爬蟲學(xué)習(xí) Scrapy中間件&代理&UA隨機&selenium使用

    控制臺操作 (百度只起個名 scrapy startproject mid scrapy genspider baidu baidu.com setting.py內(nèi) 運行 scrapy crawl baidu middlewares.py 中間件 先看下載器中間件 重點在 process_request 在引擎將請求的信息交給下載器之前,自動的調(diào)用該方法 process_response… process_exception 異常 (看名就知道了…) spider

    2024年03月23日
    瀏覽(27)
  • python爬蟲 scrapy+selenium+webdriver實現(xiàn)鼠標(biāo)滑動破解阿里云盾快驗證

    在爬取jianshu文章的時候發(fā)現(xiàn),jianshu竟然買了阿里云的盾塊驗證?。?!很是頭疼,雖然說沒有其他圖片匹配的那么麻煩,但是阿里云的人機驗證和算法真的是頂尖的,查閱了多個資料最后沒辦法,才實現(xiàn)用webdriver模擬鼠標(biāo)去通過驗證 首先我們需要安裝webdriver驅(qū)動和Google Chrom

    2024年02月03日
    瀏覽(104)
  • Firefox(火狐),使用技巧匯總,問題處理

    Firefox(火狐),使用技巧匯總,問題處理

    說明火狐如何安裝在C盤之外的盤,即定制安裝路徑。 如何將同步功能切換到本地服務(wù)上。默認是國際服務(wù)器。 安裝在C盤之后如何解決無法自動同步之前安裝的擴展問題。 擴展或插件失效問題解決方案。 分享一些火狐比較好用的擴展和插件。 火狐目前的安裝包,現(xiàn)在做的和

    2024年02月11日
    瀏覽(51)
  • Python爬蟲入門:使用selenium庫,webdriver庫模擬瀏覽器爬蟲,模擬用戶爬蟲,爬取網(wǎng)站內(nèi)文章數(shù)據(jù),循環(huán)爬取網(wǎng)站全部數(shù)據(jù)。

    Python爬蟲入門:使用selenium庫,webdriver庫模擬瀏覽器爬蟲,模擬用戶爬蟲,爬取網(wǎng)站內(nèi)文章數(shù)據(jù),循環(huán)爬取網(wǎng)站全部數(shù)據(jù)。

    *嚴正聲明:本文僅限于技術(shù)討論與分享,嚴禁用于非法途徑。 目錄 準(zhǔn)備工具: 思路: 具體操作: 調(diào)用需要的庫: 啟動瀏覽器驅(qū)動: 代碼主體: ?完整代碼(解析注釋): Python環(huán)境; 安裝selenium庫; Python編輯器; 待爬取的網(wǎng)站; 安裝好的瀏覽器; 與瀏覽器版本相對應(yīng)的

    2023年04月24日
    瀏覽(103)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包