javascript - 在 Puppeteer 中获取 "Syntax Error: invalid or unexpected token"

标签 javascript puppeteer cheerio

我正在尝试使用 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/

相关文章:

javascript - 使用 cheerio 在 Node js 上解析

javascript - 如何将 IEnumerable<HtmlElement> 转换为常规 HtmlElement

javascript - Office 365 Javascript 插件 - 语音合成

javascript - 使用本地存储和 Google Analytics 进行 AB 测试

javascript - 多个单独的浏览器,每个浏览器一个选项卡 - 同时与页面上的元素交互( headless puppeteer )

javascript - 如何分离嵌套的异步函数并按所需顺序执行它们?

php - Internet Explorer 通过 location.reload() 不断发出警报;和发布数据

node.js - Puppeteer 内存增加问题

javascript - 如何使用CheerioJS获取shopmissa.com的文章

javascript - Cheerio.js 没有抓取非内联样式?