我正在尝试使用 Puppeteer 框架运行脚本。 (我是软件的相对新手)。每次我尝试运行时,都会收到以下错误。我确信代码没有任何问题,因为它之前在另一台机器上运行良好。当 main.js 进行(唯一)函数调用时,会正确记录此错误。
SyntaxError: Invalid or unexpected token
at new Script (vm.js:80:7)
at createScript (vm.js:274:10)
at Object.runInThisContext (vm.js:326:10)
at Module._compile (internal/modules/cjs/loader.js:664:28)
at Object.Module._extensions..js (internal/modules/cjs/loader.js:712:10)
at Module.load (internal/modules/cjs/loader.js:600:32)
at tryModuleLoad (internal/modules/cjs/loader.js:539:12)
at Function.Module._load (internal/modules/cjs/loader.js:531:3)
at Function.Module.runMain (internal/modules/cjs/loader.js:754:12)
at startup (internal/bootstrap/node.js:283:19)
var puppeteer = require('puppeteer');
var $ = require('cheerio');
const url = 'https://www.reddit.com/controversial/';
puppeteer
.launch()
.then(function(browser) {
return browser.newPage();
})
.then(function(page) {
return page.goto(url).then(function() {
return page.content();
});
})
.then(function(html) {
$('h2', html).each(function() {
console.log($(this).text());
console.log('\r\n');
});
})
.catch(function(err) {
//handle error
});
我已经按照此链接卸载、清理并重新安装了 Node.js ( How do I completely uninstall Node.js, and reinstall from beginning (Mac OS X) )
最佳答案
这实际上与 puppeteer 师根本无关。在第 4 行,您有一个 zero width space字符,它看起来不像任何东西,但却使您的 Node 程序无效。如果您从网站或其他来源复制一行,有时会出现这种情况。
如果删除该行并插入一个空白的新行,应该没问题。我通过复制代码、安装依赖项并运行它来进行测试。根据您的编辑器,您应该能够显示像这样的意外 unicode 字符。
关于javascript - 在 Puppeteer 中获取 "Syntax Error: invalid or unexpected token",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55642901/