首页 > 解决方案 > 使用 AWS 开发工具包 Nodejs 将 HTML 上传到 S3 存储桶

问题描述

我正在创建一个项目来使用puppeteer-core和抓取网站的源代码chrome-aws-lambda

该项目的想法是抓取页面源并将该内容放入S3存储桶中source.txt,对于少数网站来说它可以正常工作,但对于一些网站来说它正在创建一个空文本文件。我确定我在将问题放到 S3 时会得到问题的来源 我的基本代码是

const S3 = new AWS.S3();
S3.putObject({
        Bucket: S3Bucket,
        Key: `${unique_id}/source.txt`,
        Body: new Buffer.from((pageSource)),
        CacheControl: "max-age=0,no-cache,no-store,must-revalidate",
        ContentType: "text/html",
      }, (err, data) => {
        if (err) {
          console.log(err)
        } else {
          console.log(data)
        }

      })

它正在将一些 URL 的空文件放入 s3

我的包裹是

"aws-sdk": "^2.756.0",
"chrome-aws-lambda": "^5.3.1",
"puppeteer-core": "^5.5.0",

标签: node.jsamazon-web-servicesamazon-s3aws-sdk

解决方案


推荐阅读