express.js服务器cookies上的木偶演员

express.js服务器cookies上的木偶演员,express,puppeteer,Express,Puppeteer,我正在express.js服务器上运行Puppeter。我去的一些网页需要木偶演员登录。我正在使用 const browser = await puppeteer.launch({ userDataDir: "./user_data/", }); 为了存储会话cookie,我不必每次都登录,但是,每当我重新启动express.js服务器时,cookie似乎会消失,我需要再次登录 为什么这种情况不断发生?有什么方法可以阻止它发生吗?嗯,我不能说我确切地知道是什么导致了你的问题,但我也

我正在express.js服务器上运行Puppeter。我去的一些网页需要木偶演员登录。我正在使用

const browser = await puppeteer.launch({
    userDataDir: "./user_data/",
  });
为了存储会话cookie,我不必每次都登录,但是,每当我重新启动express.js服务器时,cookie似乎会消失,我需要再次登录


为什么这种情况不断发生?有什么方法可以阻止它发生吗?

嗯,我不能说我确切地知道是什么导致了你的问题,但我也遇到了一些困难,让Puppeter正确地保存所有会话数据(构建机器人登录银行帐户检查余额等)为了解决这个问题,我创建了一些助手函数,它们使用zlib将cookie(来自direct Chrome Dev Tools客户端命令和Puppeter API)以及整个用户数据目录打包为base64字符串


这是我创建的一个,你可以运行。您需要决定在何处存储包含会话数据的base64字符串,但一旦完成,您可以使用适当的函数将其导入任何Puppeter实例,并复制确切的浏览器状态。就我而言,我正在使用firestore,但显然任何存储解决方案都可以。

看起来这曾经是一个Chromium bug。你用的是什么版本的木偶演员?另外,木偶演员可能无法正确解析
/
,会对绝对文件路径进行相同的尝试。我尝试了绝对文件路径,但没有成功。Chromium
79.0.3945.0版(开发者版)(64位)