Я запустил этот скрипт, используя php, чтобы получить возвращаемое значение, но оно пустое.
если я запускаю узел непосредственно в командной строке, он имеет значение. что я пропускаю?
код состоит из удаления div внутри веб-страницы.
Php
<?php
$command = "/usr/local/bin/node /night/pup.js";
exec($command, $output, $return_var);
print_r($output);
//empty array
?>
Терминал:
/usr/local/bin/node /night/pup.js
//123456
pup.js
const puppeteer = require('puppeteer');
var weight_lb = 200;
(async () => {
const browser = await puppeteer.launch({
headless: true,
args: ['--no-sandbox', '--disable-setuid-sandbox'],
});
const page = await browser.newPage();
await page.goto('http://xxx.xxx/xxx/x.html');
await page.evaluate(function() {
document.querySelector('#initialWeightField').value = '';
})
await page.type('#nothing', "1");
const text = await page.evaluate(() =>
document.querySelector('#finalWeightField').textContent);
await console.log("success");
await console.log(text);
//Only for testing
//await page.screenshot({path: 'example1.png',fullPage:true});
await browser.close();
})();
Меняться от
.textContent
в.value
const text = await page.evaluate(() => document.querySelector('#finalWeightField').value);
Других решений пока нет …