【问题标题】:Default user agent in WgetWget 中的默认用户代理
【发布时间】:2010-10-06 11:06:47
【问题描述】:

如果我从命令行使用 wget 而不指定显式用户代理,我想知道传递了什么默认用户代理。

我有一些代码可以根据用户代理更改输出。

wget http://www.google.com -O test.html

【问题讨论】:

  • 在您的代码中,当您做出 if 选择时打印出用户代理以查看值

标签: wget user-agent


【解决方案1】:

"wget -d" 将显示对服务器的请求。

$ wget -d http://www.google.com -O/dev/null 2>&1 |grep ^User-Agent
User-Agent: Wget/1.13.4 (linux-gnu)
User-Agent: Wget/1.13.4 (linux-gnu)
User-Agent: Wget/1.13.4 (linux-gnu)

【讨论】:

    【解决方案2】:

    在您的 shell 提示符下,执行:

    > man wget
    

    向下滚动到-U agent-string,其中指出:

    “Wget 通常标识为 Wget/version,version 是 Wget 的当前版本号”。

    这样做:

    > wget --version
    

    这将为您提供版本,从而为您提供用户代理。

    顺便说一句,您可能会发现某些网站会阻止 wget,因此根据您的操作,您可能需要更改此设置。

    【讨论】:

      【解决方案3】:

      在我的 Fedora 13 系统上,它显示 Wget/1.12 (linux-gnu)

      【讨论】:

        【解决方案4】:

        运行 wget 并嗅探通信。

        您还可以查看网络服务器的日志,通常它包含连接客户端的用户代理。

        这是我从最新的 windows wget 得到的:Wget/1.11.4

        【讨论】:

          【解决方案5】:

          您可以使用 Wireshark 等网络协议分析器来验证这一点。 使用 Wireshark,您可以检查所涉及的整个协议栈的标头和所有其他细节。

          Wireshark 既免费又开源:http://www.wireshark.org/

          【讨论】:

          • 这是一种寻找答案的方法,但它本身并不是问题的答案。
          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 2017-01-22
          • 1970-01-01
          • 2014-02-09
          • 2011-07-07
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多