[Pythhon] Windows에서 Firefox(+Selenium) 디스크 액세스 억제
개시하다
Windows 11에서 Firefox를 Selenium을 통해 자동으로 조작하는 경우가 있습니다.
뒷면에서 그 조작을 시작하면 시스템(프로세스 ID=4)의 디스크 접근이 100%가 되어 PC가 정상적으로 작동하지 못하는 경우가 많다.
작업 관리자 등을 통해 확인한 후 Sytem 처리는 디스크 액세스가 됩니다.
따라서 액세스한 파일이 Firefox 구성 파일임에도 불구하고 OS 측 문제로 여겨져 왔다.
최근에 Firefox의 문제를 깨달았습니다. 몇 번을 시도한 후에 디스크 캐시를 닫으면 디스크 접근을 억제할 수 있다는 것을 발견했습니다.
컨디션
Windows
エディション Windows 11 Pro
バージョン 21H2
OS ビルド 22000.556
エクスペリエンス Windows 機能エクスペリエンス パック 1000.22000.556.0
システムの種類 64 ビット オペレーティング システム、x64 ベース プロセッサ
PythonPython 3.10.2 (tags/v3.10.2:a58ebcc, Jan 17 2022, 14:12:15) [MSC v.1929 64 bit (AMD64)]
FirefoxFirefox 98.0.2 (64 ビット)
Seleniumselenium 4.1.0
Geckodriver'moz:geckodriverVersion': '0.30.0'
대책: Firefox 디스크 캐시 해제
수동 수정
Firefox의 디스크 캐시를 수동으로 닫으려면 다음과 같이 하십시오.
about:config
browser.cache.disk.enable
false
Selenium을 사용하여 디스크 캐시를 닫고 Firefox를 시작합니다.
Selenium Auto를 사용할 때는 구성 파일을 지정하고 를 시작해야 합니다.
예를 들면 다음과 같습니다.
python
import os.path
from selenium import webdriver
from selenium.webdriver.firefox.service import Service as FirefoxService
from selenium.webdriver.firefox.options import Options as FirefoxOptions
options = FirefoxOptions()
options.add_argument('-safe-mode')
options.set_preference("browser.cache.disk.enable", False)
service = FirefoxService(executable_path="geckodriver.exe", log_path=os.path.devnull)
driver = webdriver.Firefox(service=service, options=options)
driver.get("https://www.google.com/")
최후
디스크 캐시가 일시적으로 꺼졌지만 디스크 접근이 현저히 줄어들어 편안해졌다.
왜 메모리 사용량이 이전보다 떨어졌는지 모르겠다.
어쩌면 자신의 환경만 있을지도 모른다.
원래 메모리 환경이 좋지 않아서 디스크 접근량도 늘어나지만 어쩔 수 없다고 생각합니다.
Windows 11도 문제가 있는 것 같습니다.
Reference
이 문제에 관하여([Pythhon] Windows에서 Firefox(+Selenium) 디스크 액세스 억제), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://zenn.dev/bluesilvercat/articles/b01e6ebbf0197f텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)