Selenium에서 IE를 Node.js에서 실행하려고했습니다.
소개
갑자기 Selenium에서 Internet Explorer를 움직이고 싶어졌습니다.
조금 아래 조사한 바, Selenium/Node.js/IE의 조합의 기사는 없을 것 같았으므로 방법을 정리합니다(있으면 미안해).
Google Chrome이나 FireFox에서는 Selenium IDE라는 GUI를 사용할 수 있는 것 같습니다만, IE에는 대응하고 있지 않는 것 같네요.
설치 절차
OS : Windows10
Selenium Webdriver (Node.js 버전) 버전 : 4.0.0-alpha.1
설치는 다음 명령을 치는 것입니다.
Selenium 설치$ npm install selenium-webdriver
※사전에 Node.js와 npm을 인스톨 할 필요가 있습니다.
그런 다음 드라이버를 다음 URL에서 다운로드하고 압축을 풀고 경로를 통해 환경 변수 Path에 둡니다.
htps //w w. 세니우 mhq. 오 rg / 도 w 응 아 d /
이미지의 빨간 영역입니다.
설정
IE는 사전에 몇 가지 설정이 필요합니다.
IE 설정
OS : Windows10
Selenium Webdriver (Node.js 버전) 버전 : 4.0.0-alpha.1
설치는 다음 명령을 치는 것입니다.
Selenium 설치
$ npm install selenium-webdriver
※사전에 Node.js와 npm을 인스톨 할 필요가 있습니다.
그런 다음 드라이버를 다음 URL에서 다운로드하고 압축을 풀고 경로를 통해 환경 변수 Path에 둡니다.
htps //w w. 세니우 mhq. 오 rg / 도 w 응 아 d /
이미지의 빨간 영역입니다.
설정
IE는 사전에 몇 가지 설정이 필요합니다.
IE 설정
인터넷, 로컬 인트라넷, 신뢰할 수있는 사이트 및 제한된 사이트에 대해 보호 모드를 사용하도록 설정 (Internet Explorer를 다시 시작해야 함)을 선택하십시오.
레지스트리의 설정이 필요・・・라고의 기사도 보였습니다만 필요 없을 것 같아 안심했습니다.
소스 코드
아래 코드는 자습서의 코드를 거의 동일하며 Google에서 검색하기 만하면됩니다. Google 검색 텍스트 상자에는
name="q"
라는 속성이 붙어 있기 때문에 거기에 키 입력을하고 있습니다.ie_search.js
const {Builder, By, Key, until} = require('selenium-webdriver');
(async () => {
let driver = await new Builder().forBrowser('internet explorer').build();
await driver.manage().window().maximize();
await driver.get('http://www.google.com');
await driver.findElement(By.name('q')).sendKeys('アデリーペンギン', Key.RETURN);
})();
실행
Selenium 시작$ node ie_search.js
할 수 있었습니다.
결론
IE는 무사히 움직일 수 있었지만, 욕심을 말하면 headless로 움직이고 싶은 것입니다.
Phantom.js는 업데이트를 중지 한 것 같습니다. IE를 headless로 이동하는 좋은 느낌의 방법은 없습니까?
$ node ie_search.js
IE는 무사히 움직일 수 있었지만, 욕심을 말하면 headless로 움직이고 싶은 것입니다.
Phantom.js는 업데이트를 중지 한 것 같습니다. IE를 headless로 이동하는 좋은 느낌의 방법은 없습니까?
Reference
이 문제에 관하여(Selenium에서 IE를 Node.js에서 실행하려고했습니다.), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/LeftLetter/items/615d910c24b3caf3d09f텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)