使用R从推文中抓取图像
我很想写一个有人发布的图片博客,但我不确定这是否可能。我用“推特”从一个人那里搜刮所有帖子,但看起来我必须做一些完全不同的事情来获取图像而不是文本使用R从推文中抓取图像,r,blogdown,R,Blogdown,我很想写一个有人发布的图片博客,但我不确定这是否可能。我用“推特”从一个人那里搜刮所有帖子,但看起来我必须做一些完全不同的事情来获取图像而不是文本 如果您有任何关于采取什么方向的建议,我们将不胜感激 这是一个相当广泛的问题,但这里有一些想法 第一:我建议使用这个软件包。根据我的经验,它使身份验证更加容易,并以易于使用的结构返回数据 作为一个例子,下面是我如何在设置了软件包文档中描述的身份验证后获取自己的最后100条推文: library(rtweet) library(dplyr) neilf
如果您有任何关于采取什么方向的建议,我们将不胜感激 这是一个相当广泛的问题,但这里有一些想法 第一:我建议使用这个软件包。根据我的经验,它使身份验证更加容易,并以易于使用的结构返回数据 作为一个例子,下面是我如何在设置了软件包文档中描述的身份验证后获取自己的最后100条推文:
library(rtweet)
library(dplyr)
neilfws <- get_timeline("neilfws", n = 100)
neilfws %>%
glimpse()
指向媒体的链接位于media\u url
列中。以下是与我的推文相关的前6张图片:
neilfws %>%
filter(!is.na(media_id)) %>%
select(media_url) %>%
head()
1 http://pbs.twimg.com/media/DHzGbvyVoAAm8in.jpg
2 http://pbs.twimg.com/media/DHfc4idV0AA6qyc.jpg
3 http://pbs.twimg.com/media/DHfNamEVYAA5H_U.jpg
4 http://pbs.twimg.com/media/DHYuG1oUwAADV-z.jpg
5 http://pbs.twimg.com/media/DHQlEQqUAAAHoCK.jpg
6 http://pbs.twimg.com/media/DHLG_ESUMAAMURj.jpg
现在您有了媒体URL,您可以使用代码检索或显示它们。一个策略:1。使用正则表达式扫描链接状态(例如
“(?i-)https://t\\.co/[a-z0-9]+”
),2.解码url(例如使用httr::HEAD(…)$url
),#3检查是否是照片链接,#4打开照片链接url,#5使用XPath获取图像url,#6使用下载.file
最终下载图像。这是一个很好的开始,我更喜欢rtweet
。感谢@Yihui的编辑,我还发现了一些很好的结构入门方法。
neilfws %>%
filter(!is.na(media_id)) %>%
select(media_url) %>%
head()
1 http://pbs.twimg.com/media/DHzGbvyVoAAm8in.jpg
2 http://pbs.twimg.com/media/DHfc4idV0AA6qyc.jpg
3 http://pbs.twimg.com/media/DHfNamEVYAA5H_U.jpg
4 http://pbs.twimg.com/media/DHYuG1oUwAADV-z.jpg
5 http://pbs.twimg.com/media/DHQlEQqUAAAHoCK.jpg
6 http://pbs.twimg.com/media/DHLG_ESUMAAMURj.jpg