Javascript 如何获取Tweet预览图像

Javascript 如何获取Tweet预览图像,javascript,twitter,meta-tags,tweets,Javascript,Twitter,Meta Tags,Tweets,我正试图从Tweet的链接中获取Tweet的meta标签。我可以使用一个名为html元数据解析器的模块来获取元标记。我的问题是,当我查看推特的元标记时,我在推特上没有看到图像标记。但当我在Discord、Instagram和Whatsapp等聊天网站上发布链接时,它也会向我展示推特的图像。有人知道如何获取预览图像的链接吗 require('dotenv').config(); const router=require('express')。router(); const Meta=require

我正试图从Tweet的链接中获取Tweet的meta标签。我可以使用一个名为
html元数据解析器
的模块来获取元标记。我的问题是,当我查看推特的元标记时,我在推特上没有看到图像标记。但当我在Discord、Instagram和Whatsapp等聊天网站上发布链接时,它也会向我展示推特的图像。有人知道如何获取预览图像的链接吗

require('dotenv').config();
const router=require('express')。router();
const Meta=require('html-metadata-parser');
const axios=require('axios');
const Jimp=require('Jimp');
router.post('/webhooks/discounters',异步(res,req)=>{
const{link,provider,oauth}=req.body;
如果(
oauth==process.env.ifttoauth
) {
var response=wait Meta.parser(link);
const metaTags=JSON.stringify(response,null,3);
让我们想象一下;
让ProviderNameURL;
等待metaTags.og.images[0]?hasImage=true:hasImage=false;
provider==“Steam”?ProviderNameURL=“Steam”:provider==“育碧”?ProviderNameURL=“育碧”:provider==“EpicGames”?ProviderNameURL=“epic_games”:provider==“GOG.com”?ProviderNameURL=“GOG_com”:provider==“Humble Bundle”?ProviderNameURL=“Humble_Bundle”:“未知”;
const text=wait metaTags.og.description;
const image=hasImage==true?等待metaTags.og.images[0]。url:null;
常量图标=`https://cdn.syfac.xyz/images/game_markets/${ProviderNameURL}.png`;
const urlToDiscount=链接;
试一试{
axios.post(请求者URL{
文本,
形象,,
供应商,
偶像
urlToDiscount,
哈斯图像,
})
}捕捉(错误){
console.log(错误)
}
}else{return;}
})
module.exports=路由器;
这是我的密码
og:image
不是我要找的,因为它代表配置文件图像


当我检查Twitter的元标记时,我看到一个带有preconnect的链接标记和一个带有dns预取的链接标记,它们都转到了//pbs.twimg.com,当我检查嵌入Discord的图片源时,它是来自pbs.twimg.com的链接,所以我想我有了一些进展,但我仍然不知道如何获取图片。

如果我做对了,您要查找的是为Tweet生成的预览图像。您可以使用twitterapi进行这样的操作。随着时间的推移,我发现使用Twitter的API比解析/刮取要好得多。请参阅:

您需要做的是:

  • 获取Twitter开发者帐户。这将帮助您访问Twitter API
  • 使用API并获取有关推特和/或推特用户的详细信息
以下是一个例子:

Tweet URL示例: 所以ID是:
1380913486931361794

我使用这个ID创建了一个请求,并与邮递员一起使用。在您的情况下,应该将此调用调整为JavaScript代码。以下是请求URL:

https://api.twitter.com/2/tweets/:id?expansions=attachments.media_keys&media.fields=duration_ms,height,media_key,preview_image_url,public_metrics,type,url,width
答复如下:

{
“数据”:{
“附件”:{
“媒体密钥”:[
"3_1380913484095963145",
"3_1380913484456718339"
]
},
“id”:“1380913486931361794”,

“文本”:“印度尼西亚巴厘岛阿曼基拉”og:image"您正在寻找的?另外,如果您提供您的代码和一些results@mertdökümcü当我查看推特的元标签时,我看到了og:image,但那是创建推特的用户的个人资料图片。我将编辑我的问题并添加我的代码。刚刚发布了一个可能的解决方案。希望它能起作用。我想你需要使用推特TTERAPI。这太酷了,但我没有被twitter开发人员帐户接受……我想我没有其他办法创建一个新帐户,看看它是否被接受,我希望它能被接受