Как ввести сумму в долларах с кукловодом? - PullRequest
0 голосов
/ 12 июля 2019

В настоящее время я работаю над сценарием с кукловодом, чтобы автоматически войти в систему PayPal и отправить желаемую сумму в доллары человеку.Я успешно получил скрипт для входа в систему и перенаправления на указанную страницу, где будет указана сумма в долларах.

Фокусируемый элемент автоматически выбирается при загрузке страницы.Я пробовал разные способы, чтобы скрипт набрал нужное количество, показанное ниже, но мне не повезло заставить его работать.

Элемент, который находится в фокусе:

<input data-nemo="amount" dir="ltr" autocomplete="off" type="tel" name="amount" id="fn-amount" required="" class="ppaf-input ppaf-with-hidden-cursor" value="0.00" style="width: 86px; font-size: 42px; font-family: PayPal-Sans-Big, sans-serif;"> 

Скрипт, перенаправляющий на страницу перед тем, как набрать желаемую сумму в долларах:

await page.waitFor(10000);
await page.goto('https://www.paypal.com/myaccount/transfer/homepage/external/summary?.......');

Что я пробовал до сих пор:

1. const cookie = {
   name: 'amount',
   value: '0.01',
   domain: '.paypal.com'
};
await page.setCookie(cookie);


2. await page.type('0.01')

3. await page.focus('#amount');
   await page.keyboard.type('0.01');

4. await page.$eval('input[name=amount]', el => el.value = '0.01');

5. await page.$eval('#amount', el => el.value = '0.01');

6. await page.waitForSelector('#amount');
   await page.type('amount', '0.01', {delay: 5});

Полученная ошибка:

 No node found for selector: #amount

И ошибка, возникающая при ожидании селектора:

UnhandledPromiseRejectionWarning: TimeoutError: waiting for 
selector "#amount" failed: timeout 30000ms exceeded

1 Ответ

0 голосов
/ 12 июля 2019

Вот решение:

    await page.goto('https://www.paypal.com/myaccount/transfer/homepage/external/summary?.');
    await page.waitForSelector('#fn-amount');
    await page.type('#fn-amount', '0.01');

Пробовал на странице , но с идентификатором #amount.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...