【问题标题】:How to download article from WSJ with RCurl如何使用 RCurl 从 WSJ 下载文章
【发布时间】:2012-10-19 21:49:41
【问题描述】:

我正在尝试使用 RCurl 和 XML 包从 WSJ(华尔街日报)下载和挖掘文章。但是,每当我从 RCurl 使用 getURL 时,我都会得到可供公众查看的文章版本。

我希望能够下载文章的完整版本 - 因为我是付费会员。我想我必须通过登录凭据,当我调用函数 getURL 时,但是,我不知道该怎么做..

  1. 这些信息是否存储在 cookie 中?
  2. 我是否需要进行“身份验证” - 无论区别(可能是出于何种目的)是什么?

如果有人能解释一下 WSJ 等网站如何使用登录信息来获取数据,以及我如何调整 RCurl 以考虑这些信息,我将不胜感激。一个非常简单的示例将有助于解释设置 cookie(文件、jar、..)等的不同概念

提前谢谢你

【问题讨论】:

  • 我觉得httr可以很好的处理cookies。
  • 您能提供更多信息吗?

标签: r web text-mining


【解决方案1】:

通常,身份验证信息不存储在 cookie 中。相反,“会话 cookie”存储在您的计算机上 - 并指存储在服务器上的身份验证。有关更多信息和指针,请参阅Session management article on Wikipedia

所以基本上你需要为这个站点创建一个 cookie jar 文件,使用 curl 登录(这可能很痛苦,因为 WSJ 不使用标准的基于表单的 POST,而是依赖于 javascript),然后你'将能够告诉 curl 为文章的以下请求重新使用 cookie。阅读this answer,了解如何在实践中做到这一点。

【讨论】:

  • 感谢您的回复,抱歉,我花了一段时间才回复。如果 WSJ 不使用标准的基于表单的 POST(如您所说的 javascript),您介意再解释一下吗我怎样才能完成手头的任务?一个 RCode(类似于示例中的那个)会对我有很大帮助,因为我不是网络专家(网络、协议……)谢谢。
  • @Lalas 我提供了一个答案链接,为您提供了完整代码来执行我所解释的内容,这还不够吗?
  • 我对您关于“依赖 javascript 的 POST”的评论感到困惑。再次感谢您的链接。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2022-01-18
  • 1970-01-01
  • 1970-01-01
  • 2013-09-20
  • 1970-01-01
  • 2015-03-13
  • 1970-01-01
相关资源
最近更新 更多