【问题标题】:page sends file to curl i want to get download link insted页面将文件发送到 curl 我想获取下载链接
【发布时间】:2011-02-11 22:47:06
【问题描述】:

有一个页面,我需要向它发布密码,然后我得到一个文件来下载。 帖子再次转到其加载的同一页面地址并弹出下载管理器(下载自动开始)。 现在我想做同样的事情,但在 curl 中,我将数据发布到 url,然后它把文件发回给我,但我不希望我的脚本下载整个文件我只想获得一个链接来下载它我。 我该怎么做?

【问题讨论】:

  • Hi Korrupt(:欢迎来到 Stackoverflow。您正在寻找的是 RegEx(正则表达式),您应该编辑您的帖子以添加该标签等
  • 页面中没有我可以通过正则表达式抓取的下载链接,下载会自动开始。
  • 哦,我明白你在说什么。嗯,我不确定。这已经成为一个很好的问题。您应该编辑您的帖子以提及自动开始下载,以消除与其他人的任何混淆
  • 我想我正在路上,我尝试使用 curl 进行 RANGE 并尝试找到触发下载的元标记。但它不起作用,也许它是一个触发下载的标题不知道如何解决它。
  • 也许登录后您会通过标题重定向到下载页面,哪些统计信息会自动进行?你在你的 curl 会话中设置了 CURLOPT_FOLLOWLOCATION 吗?您可以尝试按照此处所述监视标头:it.toolbox.com/wiki/index.php/…

标签: php post curl download


【解决方案1】:

为了防止自动下载,您必须将 curl 选项设置为不遵循重定向。我不记得确切的命令,但默认情况下 curl 会跟随自动刷新和 URL 重定向,这会在几秒钟内发生,因此人类实际上不会看到它发生。

我有点不明白你真正想要做什么,但如果你只是想要一个链接,那么让 php 脚本执行整个 curl 帖子以及当他们点击它时的所有内容。无论网络服务器在访问文件之前需要什么密码,您都不能跳过该步骤。

【讨论】:

    【解决方案2】:

    在您使用 POST 访问第一页后,肯定会有重定向。使用 curl 查找该重定向并读取 http 响应标头:Content-Location 或 Location 甚至 Refresh

    【讨论】:

      【解决方案3】:

      首先,您需要使用 curl 发布该密码,假设“在特定表格上。表格将带您进入下载页面”,现在您需要使用正则表达式(正则表达式)。 过滤您想要的数据,然后将其保存在其他变量中以重复使用。

      【讨论】:

      • 但是收到的数据是整个文件,我不想用 curl 下载它,我只想抓取它的链接并将其发送给用户下载。
      【解决方案4】:

      实际上,您很可能做不到。这种受密码保护的下载系统通常会检查 cookie 或基于浏览器/环境的变量。获取链接本身应该没有问题,但是无论如何您都不能在此生成器的范围之外使用它。

      【讨论】:

      • 我得到了没有正文的标题,我只看到内容大小,没有文件名或链接,如果内容大小与文件大小一样,那么我认为密码是正确的。现在我不想只给这个人密码链接,所以我该怎么做,我不希望我的 curl 服务器下载所有文件并将其发送给这个人。也许我会向该人发送一个带有正确密码的隐藏表单,然后它会自动将其发布到正确的服务器并获取文件,但如果用户有 firebug,则有可能会看到密码。你还有其他推荐的方法吗?
      • 这是我得到的(如果没有限制,curl 限制为 3 秒,它将下载所有文件):pagesalike.com/picspile/images/2.jpg
      猜你喜欢
      • 2020-02-28
      • 1970-01-01
      • 2018-11-24
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-10-13
      • 2013-09-02
      • 1970-01-01
      相关资源
      最近更新 更多