请稍等 ...
×

采纳答案成功!

向帮助你的同学说点啥吧!感谢那些助人为乐的人

puppeteer 无法输出内容

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
const puppeteer = require('puppeteer')
// 设置所要爬取的URI地址
const url = 'https://movie.douban.com/tag/#/?sort=T&range=0,10&tags='
const sleep = time => {
return new Promise(resolve => {
setTimeout(resolve, time)
})
};
(async () => {
console.log('------------开始爬取')
// 声明一个browser
const browser = await puppeteer.launch({
args: ['--no-sandbox'],
dumpio: false
})
// 创建一个页面
const page = await browser.newPage()
// 访问地址
await page.goto(url, {
waitUntil: 'networkidle2' // 直到网络空闲结束访问
})
// 再延时3秒钟,保证数据完整
await sleep(3000)
await page.waitForSelector('.more')
for (let i = 0; i < 1; i++) {
await sleep(3000)
await page.click('.more')
}
// 获取网页内容,并在网页上加载脚本文件
const result = await page.evaluate(() => {
console.log('页面等待了很久都没有任何输出内容')
})
})()


正在回答 回答被采纳积分+3

插入代码

1回答

提问者 石头作坊 2018-02-26 18:33:31

实际上有进入evaluate函数的,console只是在chromium浏览器里面执行,在自己的终端看不到,去查了puppeteer的文档,监听console的log事件,打印到自己的终端解决

2 回复 有任何疑惑可以回复我~
  • 你在第9行括号前加点东西,比如;或者+,就可以了,否则这是个匿名函数,不是自执行函数
    回复 有任何疑惑可以回复我~ 2018-03-16 12:38:13
问题已解决,确定采纳
还有疑问,暂不采纳
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号