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

歡迎訪問 生活随笔!

生活随笔

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

编程问答

Scrapy中的splash的安装应用

發布時間:2024/10/12 编程问答 26 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Scrapy中的splash的安装应用 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
Scrapy中的splash的安裝應用

  因為要去抓取部分經過JavaScript渲染的網頁數據,所以使用scrapy中的Request返回的是沒有經過渲染的網頁代碼,

  因此我們就要運用Scrapy中的 splash 中的?SplashRequest 來進行操作。

  首先我們要使用安裝scrapy-splash:

1、利用pip 安裝 scrapy-splash

  pip install scrapy-splash

2、安裝docker

  安裝docker比較繁瑣,首先要去官網下載docker工具 由于又是Windows7版本 所以下載的是DockerToolbox, 然后手動安裝即可。

  然后安裝過程中,會出現如下情況:(該圖是網上找的)

這種時候就要去GitHub里面下載boot2docker-18.03.0-ce文件并放到黃色線條路徑處(每個人的路徑可能不同),

紅色箭頭是下載地址??https://github.com/boot2docker/boot2docker/releases/tag/v18.03.0-ce?,

然后將下載到的文件放到指定地址后 等待運行(時間較長)

安裝好之后 運行?Docker Quickstart Terminal,

然后輸入? docker pull scrapinghub/splash

然后在輸入??docker run -p 8050:8050 scrapinghub/splash

這樣便開啟了 docker 。

然后就可以開始運用 python中的 scrapy-splash 中的?SplashRequest

3、設定python中的 setting文件

SPLASH_URL = 'http://192.168.99.100:8050' #(很重要寫錯了會出目標電腦積極拒絕)

添加Splash中間件,指定優先級:

DOWNLOADER_MIDDLEWARES = {
'scrapy_splash.SplashCookiesMiddleware': 723,
'scrapy_splash.SplashMiddleware': 725,
'scrapy.downloadermiddlewares.httpcompression.HttpCompressionMiddleware': 810,
}

?

設置Splash自己的去重過濾器 :
DUPEFILTER_CLASS = 'scrapy_splash.SplashAwareDupeFilter'


緩存后臺存儲介質:
HTTPCACHE_STORAGE = 'scrapy_splash.SplashAwareFSCacheStorage' # 以上兩條必加

?

4、運用SplashRequest:

這個運用方面 有一個需要特別注意 就是:

?yield SplashRequest(url=news_url,?callback=self.down_load,args={"wait": 3})

?上面是使用 splashrequest的一個例子,其中一定要添加args={"wait": 3}? ?這一個標識延遲多久以后再將網頁信息傳送過來。

posted on 2018-10-26 16:46 痘疤臉 閱讀(...) 評論(...) 編輯 收藏

轉載于:https://www.cnblogs.com/chenansen/p/9857307.html

總結

以上是生活随笔為你收集整理的Scrapy中的splash的安装应用的全部內容,希望文章能夠幫你解決所遇到的問題。

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