2019-11-4 TIL
오늘의 배운점
const getLogin = async () => {
const driver = await new Builder().forBrowser('chrome').build();
try {
await driver.get('https://play.google.com/store/account/orderhistory');
await driver.findElement(By.css('#identifierId')).sendKeys('test');
await driver.findElement(By.css('#identifierNext')).click();
await driver.sleep(1000);
await driver.wait(until.elementLocated(By.css('#password > div.aCsJod.oJeWuf > div > div.Xb9hP > input')), 1000).then((el) => el.sendKeys('testpwd'));
await driver.wait(until.elementLocated(By.id('#passwordNext')), 1000).then((el) => el.click());
} catch (e) {
console.log(`error : ${e}`);
}
}
- selenium을 이용해서 크롤러를 만들다보면 항상 부딪치는 문제가 입력하려는 필드보다 값이 먼저 입력이 되기때문에 에러가 발생을 하는경우다. 아직은 node-selenium이 익숙하지 않아서 driver.wait이런 부분이 잘 동작하지 않는다. 우선은 임시적으로 sleep을 이용했다. 이 부분을 개선해야되지만 document가 익숙하지 않은관계로 리팩토링은 차후에…
Written on November 4, 2019