用于处理hostapd配置文件的库

pyhostapdconf的Python项目详细描述


此包包含一个库,用于处理中的hostapd配置文件 Python。它旨在配置简单的访问点,并支持 以下配置:

  • 界面选择
  • 驱动程序选择(支持NL80211和RTL871XDRV)
  • ssid
  • 国家代码
  • 频道
  • wpa配置(密码,wpa模式)
  • 最大客户端限制
  • 隐藏ssid

配置类

要加载配置文件,请使用HostapdConf类:

>>> from hostapdconf.parser import HostapdConf
>>> conf = HostapdConf('example/hostapd_example.conf')

这个类是一个通用的配置解析器/编写器,对 配置选项的工作方式。它的行为就像一本字典,你可以看 使用下标符号向上键。例如:

>>> conf['interface']
'wlan0'

如果找不到密钥,则引发KeyError

>>> conf['driver']
KeyError: '<HostapdConf "interface=wlan0...">' has no key 'driver'

您可以通过指定来设置任何键:

>>> conf['driver'] = 'nl80211'

通过使用 字典作为它的参数,就像python字典一样。最后,如果你 要保存配置文件,可以使用write()方法:

>>> conf.write()

警告

调用write()将覆盖加载的文件,并且注释是 未保存。

如果要将文件保存到其他位置,只需将路径传递到 write()方法。要重新加载配置,可以使用reload() 方法。

HostapdConf类将尽可能保留配置键的顺序 但它不提供插入配置选项的方法 在随机地点。

帮助函数

为了帮助完成常见的配置任务,有许多helper方法。

助手位于hosapdconf.helpers模块中。

>>> from hostapdconf import helpers as ha

每个helper函数都将configuration对象作为后面的第一个参数 通过特定于设置的参数。下面是帮助程序的快速概述 方法:

>>> ha.set_ssid(conf, 'Foobar')
>>> ha.hide_ssid(conf)
>>> ha.reveal_ssid(conf)
>>> ha.set_iface(conf, 'wlan2')
>>> ha.set_driver(conf, ha.REALTEK)  # or ha.STANDARD
>>> ha.set_channel(conf, 2)
# wpa_modes supported: ha.WPA1_ONLY, ha.WPA2_ONLY, ha.WPA_BOTH
>>> ha.enable_wpa(conf, passphrase='SECRET', wpa_mode=ha.WPA2_ONLY)
>>> ha.disable_wpa(conf)
>>> ha.set_country(conf, 'de')

许可证

pyhostapdconf是在gplv3下发布的。请参阅中的COPYING文件 源代码树。

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java如何获取所有链接并使用SeleniumWebDriver逐个单击这些链接   java中数组列表的arraylist移位元素   java如何存储具有不同类型参数的元素   java不能使用List<Future<?>>当从不同位置调用时,在方法参数中   java我应该如何修复代码以避免测试代码出错?   安卓 PreferenceFragment java。lang.RuntimeException   java在运行emulator时发现错误   java取消多个AsyncTask回调的有效方法是什么?如果中途满足条件,这些回调将在将来返回?   有没有办法在运行时将方法动态分配给Java类?   java如何将propertyfile与GlassFish一起使用   如何在PHP中使用bcrypt对密码进行哈希处理?   Java和UDP web服务器   java JPA允许EntityListeners执行JPA操作吗?   java执行do while语句时不会产生错误   java无法在edittext中显示数据库中的数据   java Tomcat中活动会话的数量   java在何处使用@SuppressWarnings(“requestfactory”)   netty连接中的java HornetQ异常