[問題] Selenium如何釋放資源

看板Python作者 (霹靂狗)時間3年前 (2021/07/28 15:30), 編輯推噓1(109)
留言10則, 2人參與, 3年前最新討論串1/2 (看更多)
請問Selenium(chrome)當採用headless無視窗模式,如何在非正常離開程序下 有效的回收資源,因很多User習慣跑完就直接關閉式窗,不會走正常的退出流程 當Selenium採用無視窗模式就會發生資源還咬在背景運作 目前有想到幾個解法,不知有沒有更好的方式 1.跑程序前先kill所有chrome.exe,但延伸問題是這樣做會連User本身 在瀏覽的視窗都被強制關閉 2.Selenium改呼叫Firefox,這樣就可以安心kill。但User端變成要另外裝Firefox 3.python有辦法紀錄自己呼叫的所有程序的PID嗎? 有個想法是假設有這個功能,至少 我先把這次所有PID先記錄下來,等下次呼叫python再來kill 上一輪的 PID 謝謝 -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 106.104.34.155 (臺灣) ※ 文章網址: https://www.ptt.cc/bbs/Python/M.1627457457.A.D58.html

07/28 15:43, 3年前 , 1F

07/28 15:55, 3年前 , 2F
感謝資訊~來研究 另一個問題當User用滑鼠直接去關閉視窗
07/28 15:55, 2F

07/28 15:56, 3年前 , 3F
這種關閉動作也可以設定觸發條件嗎? 如果可以就不用預先
07/28 15:56, 3F

07/28 15:57, 3年前 , 4F
輸出PID清單,等下一輪才能清除了
07/28 15:57, 4F

07/28 16:05, 3年前 , 5F
找到相關文章了 atexit: exit handler 來試試看
07/28 16:05, 5F

07/28 16:18, 3年前 , 6F
atexit看來只能處理Ctrl+C還有sys.exit(0)這類的離開
07/28 16:18, 6F

07/28 16:19, 3年前 , 7F
疑~那有辦法把DOS視窗的關閉圖塊給屏蔽掉嗎? 只留最小化
07/28 16:19, 7F

07/28 16:19, 3年前 , 8F
跟最大化
07/28 16:19, 8F

07/28 18:11, 3年前 , 9F
找到關閉X按鈕方式了 win32console
07/28 18:11, 9F

07/28 18:12, 3年前 , 10F
再來搭配atexit 就可以呼叫driver.quit() 連抓PID都省了
07/28 18:12, 10F
文章代碼(AID): #1X0GUnrO (Python)
文章代碼(AID): #1X0GUnrO (Python)