【问题标题】:get link of img in div#imgTagWrapperId在 div#imgTagWrapperId 中获取 img 的链接
【发布时间】:2019-09-12 09:38:07
【问题描述】:

我希望在 R 中使用 rvest 将图像的链接提取为字符串

我试过的是:

url <-"https://www.amazon.in/Livwell-Multipurpose-MultiColor-Polka- 
Lunch/dp/B07LGTPM3D/ref=sr_1_1_sspa?ie=UTF8&qid=1548701326&sr=8-1- 
spons&keywords=lunch+bag&psc=1"

webpage <- read_html(url)
imglink<-(webpage %>%
html_nodes("div#imgTagWrapperId") %>% 
html_nodes("img") %>%
html_attr("src"))

我希望 imglink 的值是:https://images-na.ssl-images-amazon.com/images/I/51H-DAUxWzL.jpg

但是,它是一个很长的字符类型对象,这不是我需要的。 请帮忙?

【问题讨论】:

    标签: r web-scraping screen-scraping src rvest


    【解决方案1】:

    您可以使用下面显示的id(和属性)或从脚本标签中提取(通过将标签内的javascript对象转换为json)

    require(rvest)
    url <-"https://www.amazon.in/Livwell-Multipurpose-MultiColor-Polka-Lunch/dp/B07LGTPM3D/ref=sr_1_1_sspa?ie=UTF8&qid=1548701326&sr=8-1-spons&keywords=lunch+bag&psc=1"
    
    webpage <- read_html(url)
    r <- webpage %>%
                html_nodes("#landingImage") %>% 
                html_attr("data-a-dynamic-image")
    imglink <- strsplit(r, '"')[[1]][2]
    print(imglink)
    

    【讨论】:

    • 另一个后续问题:如何更改它以引用其他图片,即同一产品还有 5 张其他图片 - 非常感谢
    • 您介意提出一个新问题,说明这些链接是什么吗?首先检查它们是否都存在于响应中。
    猜你喜欢
    • 1970-01-01
    • 2019-03-26
    • 1970-01-01
    • 2014-04-29
    • 2016-05-09
    • 2022-12-06
    • 2018-07-13
    • 2012-07-09
    • 1970-01-01
    相关资源
    最近更新 更多