campo/random-user-agent

生成真实的随机用户代理。

1.3.0 2018-06-13 14:26 UTC

This package is auto-updated.

Last update: 2024-08-30 01:27:02 UTC


README

Latest Version on Packagist Software License

生成真实的随机用户代理。用户代理列表主要来自Firefox扩展random-agent-spoofer,感谢 dillbyrne/random-agent-spoofer。此外,还从UserAgentString.comWiiBrew获取额外条目,以提供更多关于游戏机和常见网络爬虫的选项

您应该至少运行PHP 5.4才能使用此类

安装

通过Composer

$ composer require campo/random-user-agent

用法

生成用户代理

要生成随机用户代理,您可以使用以下方法

echo \Campo\UserAgent::random(), "\n";

过滤用户代理类型

要限制返回的用户代理类型,您可以将过滤器数组传递给random()

echo \Campo\UserAgent::random([
    'os_type' => 'Windows',
    'device_type' => 'Mobile'
]), "\n";

过滤器是一个键值对数组,指定了您想要返回的代理字符串类型。此过滤数组中的键类型可能包括以下内容

  • agent_name
  • agent_type
  • device_type
  • os_name
  • os_type

过滤器还支持传递额外的数组以更好地细分您从random()收到的结果

echo \Campo\UserAgent::random([
    'os_type' => ['Android', 'iOS'],
    'device_type' => ['Mobile', 'Tablet']
]), "\n";

上述代码将只返回Android和iOS操作系统的移动或平板电脑类型的用户代理

要获取可以由这些过滤器字段接受的值的列表,您可以使用以下方法,这些方法将返回可以与上述字段一起使用的值的数组

  • UserAgent::getDeviceTypes()
  • UserAgent::getAgentTypes()
  • UserAgent::getAgentNames()
  • UserAgent::getOSTypes()
  • UserAgent::getOSNames()

传递给过滤器的值不区分大小写

错误处理

如果过滤器返回没有用户代理字符串,则此类将抛出异常,这意味着过滤器无效或过于具体,或者如果上述某个字段不存在,这意味着此库已被损坏。

许可

MIT许可(MIT)。有关更多信息,请参阅许可文件