日韩欧美一级大片色视频-五月婷婷丁香久久综合-中文字幕成人免费在线-久久99 精品视频-欧美人妻激情制服丝袜另类-黄色高清av网站在线观看-亚洲国产成人精品刺激内射白浆-在线观看入口成人精品污污污-日韩av东京热电影,国产日韩免费观看,国产成人精选在线视频,久久精品在线人妻

免費(fèi)獲取策劃方案多一份參考,總有益處

重慶網(wǎng)站建設(shè)

Website construction

案例778

重慶網(wǎng)站建設(shè)

Web抓取,只是工作與OpenFaaS與Puppeteer

來源:派臣科技|時(shí)間:2020-11-15|瀏覽:

學(xué)習(xí)如何使用Puppeteer和使用OpenFaaS構(gòu)建的無(wú)服務(wù)器函數(shù)來抓取網(wǎng)頁(yè)。

web測(cè)試和抓取介紹

在這篇文章中,我將向您介紹Puppeteer,并向您展示如何使用它來使用OpenFaaS功能自動(dòng)化和抓取網(wǎng)站。

有兩個(gè)主要的原因,你可能想自動(dòng)化一個(gè)網(wǎng)絡(luò)瀏覽器:

對(duì)應(yīng)用程序運(yùn)行遵從性和端到端測(cè)試

從一個(gè)沒有可用API的網(wǎng)頁(yè)收集信息

當(dāng)測(cè)試一個(gè)應(yīng)用程序時(shí),有許多選項(xiàng),這些選項(xiàng)分為兩類:呈現(xiàn)的網(wǎng)頁(yè),使用JavaScript和一個(gè)真正的瀏覽器運(yùn)行,以及基于文本的測(cè)試,它只能解析靜態(tài)HTML??梢韵胂?,在內(nèi)存中加載一個(gè)完整的web瀏覽器是一項(xiàng)繁重的任務(wù)。在之前的工作中,我大量使用Selenium,它有針對(duì)c#、Java、Python、Ruby和其他語(yǔ)言的語(yǔ)言綁定。雖然我們的團(tuán)隊(duì)試圖在單元測(cè)試層中實(shí)現(xiàn)大多數(shù)測(cè)試,但是在某些情況下,自動(dòng)化web測(cè)試增加了價(jià)值,這意味著QA團(tuán)隊(duì)可以在開發(fā)人員開始編碼之前編寫用戶驗(yàn)收測(cè)試(UATs),從而參與到開發(fā)周期中。

Selenium在業(yè)界仍然很流行,它激發(fā)了Webdriver API的W3C工作草案,瀏覽器可以實(shí)現(xiàn)這個(gè)工作草案來簡(jiǎn)化測(cè)試。

另一個(gè)用例不是測(cè)試網(wǎng)站,而是在API不可用或沒有所需端點(diǎn)時(shí)從網(wǎng)站中提取信息。在某些情況下,您會(huì)看到這兩種使用情況的混合,例如——當(dāng)特定的司法管轄區(qū)不提供API時(shí),公司可能會(huì)使用自動(dòng)的web瀏覽器通過web頁(yè)面提交稅務(wù)文檔。

用AWS Lambda踢輪胎

最近,我了解到一個(gè)朋友通過他的SaaS產(chǎn)品提供商標(biāo)搜索,為此他選擇了一個(gè)名為Puppeteer的更現(xiàn)代的Selenium替代品。事實(shí)上,如果你在StackOverflow或谷歌中搜索“抓取和Lambda”,你很可能會(huì)看到“Puppeteer”和“headless chrome”一起出現(xiàn)。我很想用AWS Lambda試試Puppeteer,但這條路并不理想,幾乎每一步都有摩擦。

流行的aws-chrome-lambda npm模塊的大小超過40MB,因?yàn)樗峁┑氖庆o態(tài)二進(jìn)制文件,這意味著它不能作為一個(gè)普通的Lambda zip文件或Lambda層上傳

zip文件需要通過與函數(shù)所在區(qū)域相同的AWS S3存儲(chǔ)桶上傳

這個(gè)層可以從你的函數(shù)中引用。

本地測(cè)試非常困難,并且有許多關(guān)于獲得正確的npm模塊組合的StackOverflow問題

我確信這是可以做到的,而且正在大規(guī)模地進(jìn)行。對(duì)于小企業(yè)來說,如果他們不花太多時(shí)間與上述問題作斗爭(zhēng),并且能夠保持在免費(fèi)的層次內(nèi),這將是非常有吸引力的。

AWSλ截圖

得到一個(gè)簡(jiǎn)單網(wǎng)頁(yè)的標(biāo)題- 15.5秒

也就是說,OpenFaaS可以運(yùn)行在任何地方,甚至在5-10美元的VPS上,因?yàn)镺penFaaS使用的是容器,這讓我開始思考。

還有別的辦法嗎?

所以我想看看使用OpenFaaS的體驗(yàn)是否會(huì)更好。所以我想看看我能不能讓Puppeteer與OpenFaaS一起工作,這不是我第一次去那里。這是我時(shí)常會(huì)想起的事情。今天,有了buildkite.com提供的預(yù)編譯的無(wú)頭Chrome瀏覽器,事情似乎更簡(jiǎn)單了。

典型的任務(wù)包括登錄到門戶并進(jìn)行屏幕截圖。有趣的是,當(dāng)我運(yùn)行一個(gè)簡(jiǎn)單的測(cè)試來導(dǎo)航到一個(gè)博客并進(jìn)行截屏?xí)r,在AWS Lambda上花了155秒,但在我的筆記本上本地運(yùn)行的OpenFaaS上只花了1.6秒。我還能夠在本地構(gòu)建和測(cè)試這個(gè)函數(shù),就像在云中一樣。

預(yù)排

現(xiàn)在,我們將介紹使用Node.js和Puppeteer設(shè)置函數(shù)的步驟,這樣您就可以修改一個(gè)示例,并嘗試在AWS Lambda上運(yùn)行的現(xiàn)有測(cè)試。

部署OpenFaaS

我們可以利用OpenFaaS的哪些特性?

將函數(shù)的超時(shí)擴(kuò)展到我們想要的范圍

異步并并行地運(yùn)行調(diào)用

完成后獲得一個(gè)帶有結(jié)果的HTTP回調(diào),比如一個(gè)JSON格式的屏幕截圖或測(cè)試結(jié)果

在堆棧中使用max_inflight環(huán)境變量限制并發(fā)性。yml文件,以防止超載容器

觸發(fā)來自cron或Kafka和NATS之類事件的調(diào)用

從Prometheus獲得速率、錯(cuò)誤和持續(xù)時(shí)間(紅色)指標(biāo),并在Grafana中查看它們

您可以使用faasd項(xiàng)目將OpenFaaS部署到Kubernetes或在小型VM上。faasd項(xiàng)目不需要Kubernetes,而是使用containerd項(xiàng)目。

文檔:部署OpenFaaS

對(duì)于沒有耐心的人,我們的arkade工具可以讓你在不到5分鐘內(nèi)啟動(dòng)和運(yùn)行。你只需要在你的電腦上安裝Docker。

您可以運(yùn)行faas-cli describe函數(shù)來獲得一個(gè)用于curl的同步或異步URL,以及該函數(shù)是否為調(diào)用做好了準(zhǔn)備。faas-cli還可以用于調(diào)用函數(shù),我們將在下面實(shí)現(xiàn)這一點(diǎn)。

函數(shù)異步提交。

RequestBin例子

返回到RequestBin的結(jié)果示例

每個(gè)調(diào)用都有一個(gè)惟一的X-Call-Id頭,可用于跟蹤和將請(qǐng)求連接到異步響應(yīng)。

取一個(gè)屏幕截圖并將其作為PNG文件返回

AWS Lambda的一個(gè)限制是它只能返回JSON響應(yīng),盡管這種方法可能有很好的理由,但OpenFaaS允許對(duì)函數(shù)進(jìn)行二進(jìn)制輸入和響應(yīng)。

讓我們嘗試截取頁(yè)面的屏幕快照,并將其捕獲到文件中。

部署一個(gè)Grafana儀表板

我們可以使用內(nèi)置的Prometheus UI從函數(shù)中觀察紅色指標(biāo),也可以部署Grafana并訪問OpenFaaS儀表板。

參見:OpenFaaS觸發(fā)器

結(jié)束

現(xiàn)在您已經(jīng)擁有了使用Puppeteer部署自動(dòng)化測(cè)試和web抓取代碼所需的工具。由于OpenFaaS可以利用Kubernetes,您可以使用自動(dòng)伸縮的節(jié)點(diǎn)池和比通常基于云的功能產(chǎn)品更長(zhǎng)的超時(shí)。OpenFaaS可以很好地與其他工具合作,比如支持異步調(diào)用的NATS、收集指標(biāo)的Prometheus以及觀察吞吐量和持續(xù)時(shí)間并與團(tuán)隊(duì)中的其他人共享系統(tǒng)狀態(tài)的Grafana。

預(yù)編譯版本的Chrome包括docker-puppeteer和os - Chrome -lambda不會(huì)運(yùn)行在樹莓派或ARM64機(jī)器上,但有一個(gè)可能,他們可以重新構(gòu)建。如果你想從Raspberry Pi或者ARM64服務(wù)器上快速抓取網(wǎng)頁(yè),你可以考慮其他的選擇,比如scrapy。

最后,我在這里會(huì)有一些偏見,但是我發(fā)現(xiàn)讓Puppeteer使用OpenFaaS比使用AWS Lambda要簡(jiǎn)單得多,所以我認(rèn)為您應(yīng)該嘗試一下。

留言

返回頂部

君
重慶網(wǎng)站建設(shè)重慶網(wǎng)站建設(shè)Web抓取,只是工作與OpenFaaS與Puppeteer
国产一区二区欧美一区二区不卡-中文字幕久久www-亚洲va久久久噜噜噜久久一-久久久久av亚洲精品蜜臀 | 白洁少妇一区二区三区-天天添天天干天天日-久久精品国产亚洲av品善-亚洲午夜久久久国产精品 | 日韩一区二区三区欧美-欧美日韩激情在线观看-亚洲精品99久91在线水蜜桃-40路熟女在线观看 | 久久婷婷欧美日精品-国产麻豆成人av精品网站-久久久久久人妻一区二区三区动漫-色哟哟视频国产精品 | 成人乱码一区二区三区蜜臀av-成人免费视频国产免费麻豆网站-日韩av一卡二卡-国产自拍 日韩三级 | 丰满人妻av一区二区-亚洲aⅴ综合av国产八av-欧美黑人激情插插插-人人妻天天爽夜夜爽 | 成人中文字幕在线视频-午夜久久久久久久99热蜜桃-久久激情亚洲中文字幕-亚洲va天堂va欧美ⅴa在线 | 精品人妻伦一二三区久久0000-麻豆av一二三区av精品传媒-熟女人妻中文字幕精品-久久色婷婷一区论坛 | 麻豆在线观看免费高清电视剧-91精品国产综合久久久蜜臀-日韩欧美黄色一级二级三级-五月激情四射涩涩 | 久久精品视频一区二区三区-国产欧美一区二区三区在-国产午夜精品久久久久久综合-午夜精品久久久久久不卡av | 亚洲国产成人久久77777-激情六月天婷婷色婷婷-免费观看日韩网站-久久久久99精品影院 | 久久中文字幕亚洲综合-在线观看亚洲精品av-国产欧美一区二区三区四区五区-人妻久久在线视频 | 精品一区二区在线观看视频网址-成人av综合一区二区三区-国产日本欧美一区二区三区在线-91国视频在线蜜桃 | 欧美老熟女逼久久久久久-国产91区久久毛片-色婷婷久久7777-久久伊人精品在线播放 | 天天舔天天操天天淫-91精品1区2区3区-熟女91免费视频区-欧美极品一区二区在线 | 国产熟女一区二区三区四区-日韩欧美在线高清一区二区三区-人妻日本中文字幕-久久免费99精品国产自在现线 | 亚洲精品,欧美日韩-蜜臀av性久久久久蜜臀aⅴ-日韩殴美在线视频-91大神天堂福利在线 | 高清中文字幕熟女人妻-人妻乱一区二区三区-激情五月婷婷久久-jjzzjjzz亚洲日本少妇 | 日韩av电影黄色-黑人巨大精品欧美在线播放-精品久久国产字幕-18禁精品毛片久久久久 | 欧美久久日视频在线观看-999久久久蜜臀视频最新-色哟哟 欧美 日韩-中文字幕 日韩欧美 | 国模一区二区三区四区视频-999国产精品亚洲-日本久久久三级-玩弄超骚少妇一区二区三区 | 成人性生交大片费看中文-少妇熟女一区二区三区四区-人妻久久人妻久久-99久久99综合 | 99久久久国产精品免费动-91久久国产综合张津瑜-狠狠人妻久久久久久综合丁香-婷婷99视频全部在线 精品久久久久久久久蜜臀-日韩在线观看播放一区二区-国产又大又长又粗又长-高桥美绪亚洲精品中文av | 激情文学网av天堂-国产精品麻豆成人av电影-久久久亚洲天堂av-91超碰熟女嗷嗷叫, | 国产人妻av一区二区三区色-av中文字幕在线资源-欧美日韩国产福利视频-久久人妻一区二区三区蜜桃最新章节 | 麻豆av剧情在线观看-国产 在线精品自拍-麻豆女神视频在线观看-日本无卡顿一区二区 | 日韩成人黄色激情网-国产熟妇一区二区三区四区-7777久久亚洲中文字幕密-91色偷拍自怕亚洲第一页 国产精品,自拍偷拍-久久久久久久久99精品色老板-国产乱子伦一区二区三区在-亚洲精品av电影在线观看 | 日韩中文字幕在线不卡-欧美日韩一区二区三区 人妻-99久久爱免费视频-麻豆乱淫一区二区三区 | 中文字幕日产人妻久久-人妻性色av乱码一区二区三区-久久久久北条麻妃性色av-91精品国产乱码久久久久久古装 | 99啪在线视频观看-国产一区二区三区四在线-中文字幕日韩精品久久久久-精品人妻一区二区三区蜜臀 亚洲av综合色一区二区三区-精品一区二区三区蜜桃臀绯色-国产精品久久久久久久av三级-久久久国产综合av天堂 | 国产视频一区在线看-成人在线一区二区三区-97久久久久久久综合视频-五月天综合激情久久久 | 久久精品久久久久久久久久久久久-成人熟女视频一区二区三区-国产精品69久久-91偷偷噜噜噜夜夜 | 激情五月天免费视频-色婷婷丁香伊人-91 久久 九色 国产-91精品国产91久久久久久丝袜 | 日韩精品高潮视频-亚洲av日韩在线免费观看-一本色道久久亚洲av-欧美日韩一级片aaa | 欧美日韩色在线视频-麻豆免费版黄色-麻豆91精品91久久久的视频-999精品视频在线观看精品 | 天天操天天摸天天干天天爱-国产精品99成人免费视频-色婷婷一区二区三区久久-天天舔天天日天天摸 中文字幕久久激情-日韩人妻激情在线-激情五月亚洲综合-日韩 av在线免费观看 | 日韩av黄片免费观看-强乱人妻一区二区三区四区在线-国产又大又爽又粗又猛的视频-国产成人精品亚洲777人妖 | 国产毛毛片一区二区三区四区-久久成人黄色在线在线-真实玩弄白嫩丰满人妻少妇三级-日韩av在线一二三区 | 日韩人妻精品中文字幕在线看-欧美日韩国产熟妇-久久久久久综合亚洲-国产又大又长又粗又爽视频 | 高潮激情精品一区二区-久久草视频免费观看-国产乱淫av精品久久久老妇-日韩特黄色大片在线看 | 蜜臀tv欧美精品亚洲第一首页-高清欧美一区二区在线观看-亚洲天堂中文av在线-日本中文字幕在线视频97 |