Wget/Curl 应用程序是一种非交互式工具,可使用 HTTP、HTTPS 或 FTP 协议从服务器下载数据。本文将重点关注 HTTP 和 HTTPS 协议,因为用户代理值与 FTP 协议无关。
有时您需要下载网页,模拟不同的浏览器。某些网站可能会根据用于请求页面的浏览器输出不同的 html 代码。
通过修改 http/https 请求中的 User Agent 标头,您可以告诉服务器您使用的是什么浏览器。

用户代理 (UA) 字符串是包含在HTTP标头中的信息,代表用户执行操作。当您从浏览器连接到网站时,UA 会通知网站请求来自哪个浏览器、版本号和操作系统。

服务器可能对特定的用户代理有不同的响应。因此,您可能会发现自己需要更改 UA 字符串。

在本教程中,学习如何使用 设置或更改用户代理

当您使用curl发送HTTP 请求时,它以“curl/version.number”格式发送用户代理信息。

在撰写本文时最新的稳定版本是7.72.0。因此,HTTP 请求中的 UA 字符串将是:“curl/7.72.0”。

有几种方法可以使用curl命令设置或更改用户代理。

  • 使用 curl 更改用户代理
    要将 curl 用户代理更改为不同的浏览器,请添加-A带有所需用户代理字符串的选项:

    curl -A "user-agent-name-here" [URL]

    要通过模拟Firefox 81用户代理向网页example.com发送请求,您可以运行:

curl -A "Mozilla/5.0 (X11; Linux x86_64; rv:60.0) Gecko/20100101 Firefox/81.0" https://example.com/"
  • 使用 Wget 更改用户代理
    Wget 能够使用“-a”参数轻松修改用户代理值,如下例所示。

修改 Wget 中的 User Agent:

wget -U "这里的用户代理" "http://kfc.im"

下面的示例将模拟 Internet Explorer 6 从 www.google.com 请求页面

wget -U "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1)" "http://www.google.com"

如果网页设计为根据浏览器显示不同的输出,则上面的示例将显示输出,就像您从 Internet Explorer 6 连接到 Web 服务器一样。

下面是有关一些常见用户代理字符串的列表

Google Chrome

Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/58.0.3029.110 Safari/537.36

Mozilla Firefox

Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:53.0) Gecko/20100101 Firefox/53.0

Microsoft Edge

Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/51.0.2704.79 Safari/537.36 Edge/14.14393

Microsoft Internet Explorer 6 / IE 6

Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1)

Microsoft Internet Explorer 7 / IE 7

Mozilla/5.0 (Windows; U; MSIE 7.0; Windows NT 6.0; en-US)

Microsoft Internet Explorer 8 / IE 8

Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 5.1; Trident/4.0; .NET CLR 1.1.4322; .NET CLR 2.0.50727; .NET CLR 3.0.4506.2152; .NET CLR 3.5.30729)

Microsoft Internet Explorer 9 / IE 9

Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.0; Trident/5.0; Trident/5.0)

Microsoft Internet Explorer 10 / IE 10

Mozilla/5.0 (compatible; MSIE 10.0; Windows NT 6.2; Trident/6.0; MDDCJS)

Microsoft Internet Explorer 11 / IE 11

Mozilla/5.0 (compatible, MSIE 11, Windows NT 6.3; Trident/7.0; rv:11.0) like Gecko

Apple iPad

Mozilla/5.0 (iPad; CPU OS 8_4_1 like Mac OS X) AppleWebKit/600.1.4 (KHTML, like Gecko) Version/8.0 Mobile/12H321 Safari/600.1.4

Apple iPhone

Mozilla/5.0 (iPhone; CPU iPhone OS 10_3_1 like Mac OS X) AppleWebKit/603.1.30 (KHTML, like Gecko) Version/10.0 Mobile/14E304 Safari/602.1

Googlebot (Google Search Engine Bot)

Mozilla/5.0 (compatible; Googlebot/2.1; +http://www.google.com/bot.html)

Bing Bot (Bing Search Engine Bot)

Mozilla/5.0 (compatible; bingbot/2.0; +http://www.bing.com/bingbot.htm)

Samsung Phone

Mozilla/5.0 (Linux; Android 6.0.1; SAMSUNG SM-G570Y Build/MMB29K) AppleWebKit/537.36 (KHTML, like Gecko) SamsungBrowser/4.0 Chrome/44.0.2403.133 Mobile Safari/537.36

Samsung Galaxy Note 3

Mozilla/5.0 (Linux; Android 5.0; SAMSUNG SM-N900 Build/LRX21V) AppleWebKit/537.36 (KHTML, like Gecko) SamsungBrowser/2.1 Chrome/34.0.1847.76 Mobile Safari/537.36

Samsung Galaxy Note 4

Mozilla/5.0 (Linux; Android 6.0.1; SAMSUNG SM-N910F Build/MMB29M) AppleWebKit/537.36 (KHTML, like Gecko) SamsungBrowser/4.0 Chrome/44.0.2403.133 Mobile Safari/537.36

Google Nexus

Mozilla/5.0 (Linux; U; Android-4.0.3; en-us; Galaxy Nexus Build/IML74K) AppleWebKit/535.7 (KHTML, like Gecko) CrMo/16.0.912.75 Mobile Safari/535.7

HTC

Mozilla/5.0 (Linux; Android 7.0; HTC 10 Build/NRD90M) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/58.0.3029.83 Mobile Safari/537.36

Curl

curl/7.35.0

Wget

Wget/1.15 (linux-gnu)

Lynx

Lynx/2.8.8pre.4 libwww-FM/2.14 SSL-MM/1.4.1 GNUTLS/2.12.23

扫描二维码,在手机上阅读!
分类: 网络技术 标签: wgetcurluser agent

评论