Javascript 本地刮板和云刮板返回不同的结果
我试着刮instagram,得到了不同的结果。函数正在通过下面的命令展开。当我从这个视频中尝试非常相似的功能时: 一切正常。instagram imo似乎有问题,但也许有人知道如何解决这个问题 我的剪贴片段:Javascript 本地刮板和云刮板返回不同的结果,javascript,node.js,google-cloud-functions,instagram,puppeteer,Javascript,Node.js,Google Cloud Functions,Instagram,Puppeteer,我试着刮instagram,得到了不同的结果。函数正在通过下面的命令展开。当我从这个视频中尝试非常相似的功能时: 一切正常。instagram imo似乎有问题,但也许有人知道如何解决这个问题 我的剪贴片段: const puppeteer = require('puppeteer'); let browserPromise = puppeteer.launch({ args: ['--no-sandbox'], }); exports.igprof = async (req, res)
const puppeteer = require('puppeteer');
let browserPromise = puppeteer.launch({
args: ['--no-sandbox'],
});
exports.igprof = async (req, res) => {
const username = req.query.username || 'instagram';
let url = 'https://www.instagram.com/' + username;
const browser = await browserPromise;
const context = await browser.createIncognitoBrowserContext();
const page = await context.newPage();
await page.goto(url, { waitUntil: 'networkidle2' });
const html = await page.evaluate(() => document.body.innerText);
// const json = JSON.parse(html);
// if (json.graphql) {
// console.log(json.graphql.user.profile_pic_url_hd);
// await page.goto(json.graphql.user.profile_pic_url_hd);
// }
const image = await page.screenshot({
clip: {
x: 240,
y: 140,
width: 320,
height: 320,
},
});
// res.setHeader('Content-Type', 'image/png');
res.setHeader('Content-Type', 'text/html');
// res.send(image);
res.send(html);
context.close();
};
package.json
{
"name": "ig-prof",
"version": "1.0.0",
"description": "",
"main": "index.js",
"scripts": {
"start": "functions-framework --target=igprof"
},
"author": "",
"license": "ISC",
"dependencies": {
"@google-cloud/functions-framework": "^1.2.1",
"puppeteer": "^1.19.1"
}
}
部署命令:
gcloud functions deploy igprof --trigger-http --runtime=nodejs10 --memory=1024mb --region=europe-west1
结果本地主机:
instagram Verified Follow 6462发布3.62亿粉丝59关注instagram#ShareBlackStories about.instagram.com/blog/announcements/Introduction-instagram-reels-announcement让我们知道你的谷歌云上有正确的登录凭据吗?是的,如果函数已成功部署和运行,则必须更正是否可以添加有关函数部分的更多信息。根据您的代码,我们只能看到刮板,但不能看到功能部分。此外,如果它在您的本地主机上工作,那么您似乎没有通过函数正确发送信息,因此它可能会正确返回数据。@gso_gabriel I更新了描述。您好@darekdede1995确实,这似乎是Instagram端的一个问题。我建议你联系他们,他们可能会提供关于它的良好见解。你确定你在谷歌云上有正确的登录凭据吗?是的,如果该功能已成功部署和运行,则必须更正。如果你可以添加更多关于该功能部分的信息。根据您的代码,我们只能看到刮板,但不能看到功能部分。此外,如果它在您的本地主机上工作,那么您似乎没有通过函数正确发送信息,因此它可能会正确返回数据。@gso_gabriel I更新了描述。您好@darekdede1995确实,这似乎是Instagram端的一个问题。我建议你联系他们,他们可能会对此提供很好的见解。