【问题标题】:Cannot GET cookie?无法获取 cookie?
【发布时间】:2019-11-19 20:56:19
【问题描述】:

如果我们在 chrome 中访问this url,打开 devtools,我们可以清楚地看到一个 cookie 出现(在 chrome 开发者工具 -> 'application' -> 'cookies' 中)。

如果我们使用httr::GET() 尝试相同的操作,我们希望看到 cookie,但我们没有:

library(httr)

r <- GET("https://aps.dac.gov.in/LUS/Public/Reports.aspx")
r$cookies
# [1] domain     flag       path       secure     expiration name       value     
# <0 rows> (or 0-length row.names)

为什么会这样,我们如何最好使用httr 和/或rvest(加上其他建议,但没有使用实际浏览器来检索 cookie(以及页面 html) ,无头或其他,包括硒)

【问题讨论】:

    标签: r rvest httr


    【解决方案1】:

    发生这种情况的原因是因为 cookie 直到用户提交表单才真正生成(通过打开 chrome 开发人员工具并在表单提交前后观察 'application' -> 'cookies' ,我们看到了 cookie出现。

    请注意,这可以使用 chrome incognito 进行模拟(它无法访问常规 chrome 中的 cookie,因此可以出于演示目的反复尝试)。

    【讨论】:

    • 有没有人找到一种方法来获取 cookie 并抓取页面?我试过httr::set_cookies(),但我不明白该给谁用...
    • @DominikVogel 由于某种原因,我什至一开始就无法获得 cookie。你可以用你的例子提出一个新问题并链接到这个页面
    猜你喜欢
    • 2020-07-19
    • 2022-01-12
    • 2020-07-13
    • 1970-01-01
    • 2017-04-28
    • 2021-05-18
    • 1970-01-01
    • 1970-01-01
    • 2018-12-19
    相关资源
    最近更新 更多