当前位置: 首页 > 面试题库 >

重定向curl后获取最终URL

毛勇
2023-03-14
问题内容

在页面重定向(最好使用curl或wget)之后,我需要获取最终的URL。

例如, http://google.com 可以重定向到
http://www.google.com

内容很容易获得(例如curl --max-redirs 10 http://google.com -L),但是我只对最终URL(在前一种情况下为http://www.google.com)感兴趣。

仅使用Linux内置工具有什么方法可以做到这一点?(仅命令行)


问题答案:

curl-w选项和sub变量url_effective就是您要寻找的。

就像是

curl -Ls -o /dev/null -w %{url_effective} http://google.com

更多信息

-L         Follow redirects
-s         Silent mode. Don't output anything
-o FILE    Write output to <file> instead of stdout
-w FORMAT  What to output after completion

更多

您可能还想添加-I(这是一个大写字母i),这将使命令不下载任何“
body”,但是它随后还使用HEAD方法,这不是要包含的内容,并且可能会更改服务器的功能。有时,即使服务器对GET的响应很好,服务器对HEAD的响应也不好。



 类似资料:
  • 我可以使用下面的curl命令获得重定向的url。 但我有一个案例,页面加载200状态,但在2或3秒后,页面被重定向。Curl给我的原始url的响应是200,但在等待几秒钟后会发生301重定向。 有没有办法让卷曲追踪出最后的重定向?

  • 问题内容: 我想做的是 找出重定向之后的最后一个/最终URL是什么 。 我不希望使用cURL。 我想坚持使用纯PHP(流包装器)。 现在,我有一个URL(比如说http://domain.test),并且我使用get_headers()从该页面获取特定的标题。get_headers也将返回多个标题(请参见下面的 Edit )。有没有办法使用这些标头来构建最终URL?还是有一个PHP函数可以自动执行

  • 问题内容: 我用python解析网站。他们使用大量重定向,并通过调用javascript函数来完成重定向。 因此,当我仅使用urllib解析网站时,它无济于事,因为我无法在返回的html代码中找到目标url。 有没有办法访问DOM并从我的python代码中调用正确的javascript函数? 我需要的只是URL,重定向将我带到了那里。 问题答案: 我看着硒。而且,如果您没有运行纯脚本(这意味着您没

  • 我有一个页面“/order/new”,它包括两个客户及其地址的下拉菜单和一个重定向选择要添加到订单中的产品的按钮,我在一个数组中获得产品,并将该数组传递给“/order/new”。但是当我重定向时,我没有获得选定的客户及其地址。我将按顺序添加的产品保存在全局数组hh中,它从ajax获得数据 我想在添加产品数组后获取客户及其地址 我的ajax代码: “/new/order”得我得ejs:

  • 问题内容: 我正在使用curl填写表格。完成发布后,另一个处理表单的脚本将重定向到另一个URL。我想将此重定向URL转换为变量。 问题答案: 你会用 并解析标题的标题

  • 可以按如下方式创建遵循重定向的客户端: 调用URL上的头请求后,如何检索最终的位置头?换句话说,我们如何将最终URL重定向到?