JavaScript Мокко Selenium набирает фразы в Google - PullRequest
0 голосов
/ 12 февраля 2020

У меня есть задача прочитать фразы из файла (я делаю это в "beforeEach", они сохраняются в фраз Array) и читать заголовки Google по Selenium - сохранить их на вывод массив и затем вывод массив в CSV-файл в "afterEach".

it('Automation', async function() {
        await driver.get("https://www.google.pl/");
        await driver.manage().window().setRect({ width: 1920, height: 1080 });
        for (let i = 0; i < phrases.length; i++) {
            await driver.findElement(By.name("q")).sendKeys(phrases[i]);
            await driver.findElement(By.name("q")).sendKeys(Key.ENTER);
            await driver.sleep(1500);
            await driver.findElements(By.css(".bkWMgd .rc h3")).then(async function(elements){
                if(elements.length > 0){
                    for(let j = 0; j< elements.length; j++){
                        let text = await elements[j].getText();
                        if (text!=""){
                            output.push({
                                phrase: phrases[i],
                                heading: text
                            });
                        }
                    }
                }
                else{
                    await console.log(phrases[i]+" - no results");
                }
            });
            await driver.sleep(2000);
            await driver.findElement(By.name("q")).clear();
        }
    })

Вывод выглядит следующим образом (фразы выделены жирным шрифтом, заголовки - нет, это около 10 заголовков на фразу):

прошивка zte tv box Обновления и прошивка »Android Обновление TV Box »WTFFIX ...

Прошивка для ZTE TV Box ZTE ZXV10 B860HV2 - это новый Android TV Box от ZTE ...

прошивка zte tv box ZTE Android ТВ бокс - ZXV10 B860H - Форумы RedFlagDeals.com

прошивка zte tv box резервное копирование Amlogi c прошивка - FreakTab

(...)

прошивка tv box zte b860h прошивка stb zte b860h full root

прошивка tv box zte b860h прошивка stb ТВ-бокс zte b760h

прошивка ТВ-бокс zte b860h Pulpstone hg680

прошивка ТВ-бокс zte b860h S905X-BV B860H: загрузчик + загрузка + восстановление - FreakTab

(...)

Рабочий стол zte axon Может кто-нибудь попробовать переходник usb- c на HDMI с Z… | ZTE Axon 10 Pro ...

Рабочий стол zte axon Как запустить удаленное управление компьютером / Зеркальное отображение экрана в ...

Рабочий стол zte axon ZTE Axon M (Z999) - передача носителя на компьютер и с компьютера ...

рабочий стол zte axon Руководство пользователя ZTE AXON

(...)

Обычно это работает нормально, но иногда у меня странный вывод. Похоже, он остановился на какой-то фразе и до конца возвращает одни и те же заголовки для разных фраз ... Что не так?

...