【发布时间】:2019-08-23 03:15:19
【问题描述】:
我是木偶师的新手。我曾经拥有 PhantomJS 和 CasperJS,但是在设置更新的服务器(freebsd 12)时发现对 PhantomJS 的支持已经消失,并且 CasperJS 给了我分段错误。
我能够很好地将我的应用程序移植到 puppeteer,但遇到了一个问题,即当我想从表中捕获数据时,这些数据似乎不完整或被截断。
我需要一张表格中的所有信息,但总是得到更少。
我尝试过较小的表,但它也被截断了。
不知道console.log缓冲区是否可以扩展,或者有没有更好的方法来获取表中所有tds的值。
const data = await page.$$eval('table.dtaTbl tr td', tds => tds.map((td) => {
return td.innerHTML;
}));
console.log(data);
我应该能够得到所有行,但我得到了这个
[ 'SF xx/xxxx 3-3999 06-01-16',
'Sample text - POLE',
'',
/* tons of other rows (removed by me in this example) <- */
'',
/* end of output */ ... 86 more items ]
我需要其他 86 件物品!!! 因为我在执行代码时让 PHP 从标准输出中获取它。
【问题讨论】:
标签: javascript node.js google-chrome puppeteer