为了账号安全,请及时绑定邮箱和手机立即绑定

twitter 中的 twitter4j 状态有图像但没有媒体实体

twitter 中的 twitter4j 状态有图像但没有媒体实体

桃花长相依 2021-09-03 15:40:29
我正在尝试使用 twitter4j 来获取 twitter 用户时间线状态和有关它们的信息。问题是在 twitter 中有一些附加到一些状态的图像,但 twitter4j 返回空的媒体实体。这是我的代码:for (Status status : twStatuses) {    String Iurl = status.getUser().getProfileImageURL();    twitterLink.add("https://twitter.com/" + status.getUser().getScreenName() + "/status/" + status.getId());    twitterText.add(status.getText());    ExtendedMediaEntity[] media = status.getExtendedMediaEntities(); //get the media entities from the status    if (media.length == 0) {        twitterImage.add("0");    } else {        for (ExtendedMediaEntity mediaEntity : media) {            if (mediaEntity.getMediaURL().equals("")) {                twitterImage.add("0");            } else {                twitterImage.add(mediaEntity.getMediaURL());            }        }    }    twitterDate.add(status.getCreatedAt().toString());   }
查看完整描述

1 回答

?
暮色呼如

TA贡献1853条经验 获得超9个赞

我记得,我以前是这样用的:编辑:这只是为了获取 1 张图像。


for(MediaEntity me : status.getMediaEntities()){

    if(me.getMediaURLHttps() != null)//also check blank

        twitterImage.add(me.getMediaURLHttps());

}

获取所有媒体实体(最多 4 张照片 || 1 个视频 || 1 个 GIF)


Twitter twitter = TwitterFactory.getSingleton();

List < Status > statuses = twitter.getHomeTimeline();


for (Status status: statuses) {

 ExtendedMediaEntity[] extendedMediaEntities = status.getExtendedMediaEntities();


 for (ExtendedMediaEntity eme: extendedMediaEntities) {

  if (eme.getMediaURLHttps() != null) { //also check blank

   if (eme.getType.equals("photo"))

    twitterImage.add(me.getMediaURLHttps());

  }

 }

}


查看完整回答
反对 回复 2021-09-03
  • 1 回答
  • 0 关注
  • 125 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信