def _enable_download_in_headless_chrome(driver: webdriver, download_dir: str): """ :param driver: 크롬 드라이버 인스턴스 :param download_dir: 파일 다운로드 경로 """ driver.command_executor._commands["send_command"] = ( "POST", '/session/$sessionId/chromium/send_command') params = { 'cmd': 'Page.setDownloadBehavior', 'params': { 'behavior': 'allow', 'downloadPath': download_dir } } driver.execute("send_command", params)
def _enable_download_in_headless_chrome(driver: webdriver, download_dir: str): """ headless does not allow file download: https://bugs.chromium.org/p/chromium/issues/detail?id=696481 크롬 드라이버는 크롤링을 이용한 해킹을 예방하기 위해 기본적으로 headless 모드에서 다운로드를 지원하지 않는다. 전문을 먼저 보내야 사용이 가능. 자세한 내용 위 링크 참조 :param driver: 크롬 드라이버 인스턴스 :param download_dir: 파일 다운로드 경로 """ driver.command_executor._commands["send_command"] = ("POST", '/session/$sessionId/chromium/send_command') params = { 'cmd': 'Page.setDownloadBehavior', 'params': { 'behavior': 'allow', 'downloadPath': download_dir } } driver.execute("send_command", params)