精選文章

2021 年 1 月熱門電子書推薦 | 精選書籍推薦

圖片
2021 年1 月推薦書籍:一起來閱讀增進知識吧,挑戰看看這個月能看幾本!或是有其他推薦書籍也歡迎分享~ 全身激痛點地圖 (電子書) 出版日期:2020/04/21 作者:侯鐘堡 推薦指數:⭐⭐⭐⭐ 失眠的年代:即刻救援你的睡眠,不睡這個殺手就在你身邊 (電子書) 出版日期:2020/12/16 作者:許承翰,高紅敏 推薦指數:⭐⭐⭐⭐ 病從排寒解2 排寒實踐與突破:20年臨床實證,突破排寒盲點,防治疫毒流感的中醫養命方略! (電子書) 出版日期:2020/12/05 作者:李璧如 推薦指數:⭐⭐⭐⭐ 身體的立體結構網絡:一個結構治療科醫師的筆記 (電子書) 出版日期:2020/11/01 作者:林兩傳 推薦指數:⭐⭐⭐⭐ 1個月-7kg 奇蹟蛋白質減重法 (電子書) 出版日期:2020/12/29 作者:土田隆 推薦指數:⭐⭐⭐⭐ 人類使用說明書 (電子書) 出版日期:2020/11/26 作者:卡蜜拉‧彭 推薦指數:⭐⭐⭐⭐ 0負擔天文課:輕薄短小的109堂課,變身一日太空人 (電子書) 出版日期:2020/11/16 作者:侯東政 推薦指數:⭐⭐⭐⭐⭐ 我們為何吃太多?全新的食慾科學與現代節食迷思 (電子書) 出版日期:2020/12/30 作者:安德魯‧詹金森 推薦指數:⭐⭐⭐⭐ 只有一半的真相:為什麼科學看不到全貌? (電子書) 出版日期:2020/11/30 作者:布拉斯藍德 推薦指數:⭐⭐⭐⭐⭐ ...

Puppeteer 使用 FileChooser 無法上傳檔案 | 開發經驗分享


最近工作上接到新的任務是利用 Puppeteer 來自動化操作網頁,之前雖然有用過 Python 搭配 Selenium 的經驗,但 Puppeteer 是要用 Node.js 寫,完全沒寫過 Node.js 啊!!

今天想跟大家分享開發中遇到的小問題,是關於模擬點擊上傳照片,因為操作的網頁並沒有提供 API,故只好做個機器人來替代人工操作。

簡單介紹一下流程 :

第一步是點擊「 上傳照片 」

接著會跳出此視窗,要再點擊「 選擇檔案 」


最後就會跳出檔案選擇器來上傳檔案

遇到的問題

針對此需求,Puppeteer 可以透過使用 FileChooser、uploadFile 這兩個 API 解決,不過很神奇的是,當我實作時卻完全無法使用,會在使用 waitForFileChooser 時 timeout。

試了很多方法,後來還去查了是不是可以用拖拉檔案 ( drag and drop )、或是跳出檔案選擇器時,模擬鍵盤點選 "\",會彈出 「 前往資料夾 」,再想辦法輸入檔案路徑,雖然沒有成功就是了。


如何解決

後來找到這個 issue,五天前有人猜想是不是 Chromium 版本是 80 + 時,waitForFileChooser 會失效。

我查了一下我的 Puppeteer 版本是 2.0.0,當使用 npm install 後會自動下載 Chromium,目前版本確實是 80,我嘗試將版本改為 1.9.0,重新執行後發現可以使用了。看其來確實是在新版時 waitForFileChooser 會失效。


如果喜歡我的文章,想隨時收到最新行銷、技術分享,歡迎按 fb 粉專讚
加入好友  或加入 LINE 官方帳號,接收最新文章通知

留言

這個網誌中的熱門文章

自動將 Blogger 文章發佈到 facebook 粉絲專頁 (上)

使用 docker 部署 Python Flask | 心得分享

2021 年 1 月熱門電子書推薦 | 精選書籍推薦