You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何通过Appium Python客户端获取已设置的Desired Capabilities平台信息

获取Appium会话中的PlatformName Capability

嘿,这事儿其实挺简单的!你已经有了Appium Driver实例,直接通过内置的属性就能拿到你需要的capability信息,不用找复杂的方法。

直接获取的方法

Appium Python客户端的Driver实例自带一个capabilities属性,这是一个包含所有会话capabilities的字典。你可以直接通过键名platformName来取值:

# 获取当前平台名称
current_platform = self.driver.capabilities['platformName']

# 或者用get方法更安全(避免key不存在时抛出错误)
current_platform = self.driver.capabilities.get('platformName')

拿到值之后,你就可以判断是iOS还是Android了:

if current_platform == 'iOS':
    print("当前运行在iOS平台")
elif current_platform == 'Android':
    print("当前运行在Android平台")
else:
    print(f"检测到未知平台: {current_platform}")

封装成你想要的调用方式

如果你特别喜欢类似get_capabilities('platformName')的调用风格,也可以自己封装一个小方法:

def get_capability(self, cap_name):
    # 从capabilities字典中获取指定的capability
    return self.driver.capabilities.get(cap_name)

# 调用方式就和你期望的一样了
platform_name = self.get_capability('platformName')

这个capabilities字典里不仅包含你初始化时设置的所有Desired Capabilities,还会有Appium会话返回的额外信息(比如设备UDID、Appium版本等),所以其他capability比如deviceName、appPackage也能通过同样的方式获取。

内容的提问来源于stack exchange,提问作者Mate Ajdukovic

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.20 09:21:17