我正在尝试使用 python-user-agents .我一直在库本身中遇到许多错误。
首先它引用了它从未定义的 from ua_parser import user_agent_parser
。因此,在摸索之后,我上网查看可能是什么,发现 ua_parser
是该项目正在使用的另一个库。所以我下载了ua_parser
。但是现在我收到一个错误
TypeError: parse_device() got an unexpected keyword argument 'model'
果然,ua_parser
有一个 python-user-agents 库不期望的模型变量。有人用这个库做得更好吗?写它的人显然做得很糟糕。但这似乎是我能找到的唯一东西。任何帮助修复它以使其正常工作?我希望使用它来识别浏览器的设备是移动设备还是可触摸设备或平板电脑,如:user_agent.is_mobile
或 user_agent.is_touch_capable
或 user_agent。是_平板电脑
最佳答案
如果您从 github 链接查看自述文件,它会告诉您要安装什么以及如何使用该库:
你需要 pyyaml 和 ua-parser:
pip install pyyaml ua-parser user-agents
一个工作示例:
In [1]: from user_agents import parse
In [2]: ua_string = 'Mozilla/5.0 (iPhone; CPU iPhone OS 5_1 like Mac OS X) AppleWebKit/534.46 (KHTML, like Gecko) Version/5.1 Mobile/9B179 Safari/7534.48.3'
In [3]: user_agent = parse(ua_string)
In [4]: user_agent.is_mobile
Out[4]: True
In [5]: user_agent.is_touch_capable
Out[5]: True
In [6]: user_agent.is_tablet
Out[6]: False
关于python-user-agents 库不工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27627440/