我将能够检索存储在Twitter卡(https://dev.twitter.com/docs/cards)中的HTML标记。
到目前为止,我使用TweetSharp库从某个用户的时间轴中检索推文。但是,这并不奇怪,因为卡片是新的东西,它不包括在内。
有没有人知道,是否可以使用API访问卡(由Twitter爬虫缓存的数据)?
答案 0 :(得分:7)
Twitter卡本身不通过Twitter API公开。
您需要做的是向提到的网址发出请求并检查<head>
元素,看看他们是否有Twitter卡信息。
答案 1 :(得分:1)
Twitter api不提供开箱即用的Twitter卡信息。您可以通过在其html中查找来提取该URL的卡信息。下面的csharp中的代码从url-
获取卡片图像srcpublic static TweetMedia[] GetTwitterCardDetails(string url)
{
string HTML;
using (var wc = new WebClient())
{
HTML = wc.DownloadString(url);
}
var doc = new HtmlAgilityPack.HtmlDocument();
doc.LoadHtml(HTML);
HtmlNode element = doc.DocumentNode.SelectSingleNode("//meta[@name='twitter:image:src']");
if (element != null)
{
return new TweetMedia[] { new TweetMedia { url=url, media_url_https = element.Attributes["content"].Value, type = TweetTypes.TweetType.Photo.ToString() } };
}
return null;
}