歌者文明清理员 发表于 2023-7-19 19:23:33

User Agent判断

https://dddddgz.github.io/software/1.html

我的代码里判断的是ua包含mac,可是它把ios系统都算进去了



哪位可以给下各种常见系统的user agent?

水是剧毒的

Mike_python小 发表于 2023-7-19 19:23:54

以下是一些常见操作系统的 User Agent 示例:

1. Windows:
   - Chrome: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36
   - Firefox: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:89.0) Gecko/20100101 Firefox/89.0

2. macOS:
   - Chrome: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36
   - Safari: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/14.1.1 Safari/605.1.15

3. iOS:
   - Safari on iPhone: Mozilla/5.0 (iPhone; CPU iPhone OS 14_7 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/14.1.2 Mobile/15E148 Safari/604.1
   - Safari on iPad: Mozilla/5.0 (iPad; CPU OS 14_7 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/14.1.2 Mobile/15E148 Safari/604.1

4. Android:
   - Chrome on Android Phone: Mozilla/5.0 (Linux; Android 11; Pixel 3) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.120 Mobile Safari/537.36
   - Chrome on Android Tablet: Mozilla/5.0 (Linux; Android 11; SM-T510) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.120 Safari/537.36

以上仅是一些示例,实际上还有更多不同操作系统和浏览器的 User Agent。你可以通过在特定设备上打开浏览器并访问以下网站来获取你所需的 User Agent:https://www.whatismybrowser.com/detect/what-is-my-user-agent

希望对你有所帮助!如果你还有其他问题,请随时提问。
球一个最佳答案谢谢啦!{:10_254:}{:10_254:}{:10_254:}

陶远航 发表于 2023-7-19 19:23:58

针对不同操作系统的用户代理(User Agent)字符串,以下是一些常见操作系统的示例:

- Windows 10: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/58.0.3029.110 Safari/537.3
- macOS Mojave: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/78.0.3904.97 Safari/537.36
- iOS 13 (iPhone): Mozilla/5.0 (iPhone; CPU iPhone OS 13_0 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/13.0 Mobile/15E148 Safari/604.1
- Android 10: Mozilla/5.0 (Linux; Android 10; Pixel 3 XL) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/85.0.4183.127 Mobile Safari/537.36

要根据用户代理字符串判断操作系统,可以使用字符串中的关键词来进行匹配。例如,要区分 Windows 和 macOS,可以检查字符串中是否包含 "Windows" 或 "Macintosh"。类似地,要判断是否是 iOS,可以检查字符串中是否包含 "iPhone" 或 "iPad"。

以下是一个简单的示例代码,演示如何根据用户代理字符串判断操作系统:

user_agent = 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/78.0.3904.97 Safari/537.36'

def get_os(user_agent):
    if 'Windows' in user_agent:
      return 'Windows'
    elif 'Macintosh' in user_agent:
      return 'macOS'
    elif 'iPhone' in user_agent or 'iPad' in user_agent:
      return 'iOS'
    elif 'Android' in user_agent:
      return 'Android'
    else:
      return 'Unknown'

operating_system = get_os(user_agent)
print(operating_system)


在上述代码中,我们定义了一个 get_os() 函数,根据用户代理字符串中的关键词来判断操作系统。根据示例的用户代理字符串,代码将返回 'macOS'。

请注意,这只是一个简单的示例代码,仅对给定的用户代理字符串进行了基本的判断。在实际使用时,您可能还需要考虑更多情况和更全面的匹配。

希望这个回答对您有所帮助。如果您还有其他问题,请随时提问。

isdkz 发表于 2023-7-19 19:24:22

当我们在使用浏览器访问某个网站时,浏览器会向服务器发送一个请求,其中包含一段叫做 "User Agent" 的信息。这段信息用来标识访问网站的浏览器类型、操作系统、版本等信息。然后服务器就可以根据这些信息来判断客户端的环境,返回最适合该环境的网页。

你提到的问题在于代码中判断User Agent包含"mac"的情况下,iOS系统也被算进去了。这是因为iOS设备的User Agent中通常也会包含"Mac"这个关键词。例如,一个典型的iPhone的User Agent可能如下:

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

从上面的例子可以看出,"Mac OS X"是包含在其中的。因此,如果你想在User Agent中分别判断mac和iOS系统,你需要更精细地检查User Agent。

以下是一些常见的系统的User Agent:

1. Windows 10:Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/58.0.3029.110 Safari/537.3
2. MacOS:Mozilla/5.0 (Macintosh; Intel Mac OS X 10_12_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/58.0.3029.110 Safari/537.3
3. iOS: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
4. Android:Mozilla/5.0 (Linux; Android 6.0; Nexus 5 Build/MRA58N) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/58.0.3029.83 Mobile Safari/537.36

请注意,不同的设备和浏览器的User Agent可能会略有不同,这只是一些典型的例子。在实际判断时,你可能需要更复杂的判断逻辑,例如使用正则表达式等方法。
页: [1]
查看完整版本: User Agent判断