0

我们正在使用tumblr gem从我们的博客中获取帖子。我们得到这样的帖子:

client = Tumblr::Client.new
posts = client.posts("blog_url", :type => "text", :limit => 2)["posts"] #gets a posts array

在 Tumblr 中,图片存储在文章正文中,因此您必须在文章正文中搜索 img 标签,例如,以下查询从第一篇文章中获取图片:

posts = client.posts("blog_url", :type => "text", :limit => 2)["posts"][0]["body"][/<img.*/]

但是如果没有图像怎么办……它返回 nil 并且不显示图像。

我想找到最近的两个带图片的帖子,我该怎么做?有任何想法吗?

4

1 回答 1

2

制作:limit超过 2 个(记录的限制一次最多 20 个,未记录的限制似乎是 50 个)。您可以使用:offset批量检索。nil在您收集到两个有效的图片帖子之前,请忽略退货。

顺便说一句,您说“在 Tumblr 中,图像存储在帖子正文中”。如果帖子的类型为 ,则这是正确的text。但也有photo类型的帖子。我想你知道这一点吗?

我问的原因是您是否只发布照片或带有简短注释的照片。您可以制作带有标题的照片帖子。:type=>"photo"然后你就可以请求:limit=>2

或者 - 您可以使用例如"image"标记所有图片博客文章。然后,您:limit=>2可以使用:tag=>"image"

希望在某种程度上有所帮助:)

于 2013-05-23T00:43:42.887 回答