我试图将蓝牙与python结合使用,但遇到了一个模块-pybluez。当时,我尝试通过运行pip install pybluez进行安装。该软件包已找到并下载,但是在运行python setup.py egg_info时引发了错误。
然后我尝试从此链接https://pypi.python.org/pypi/PyBluez下载pyBluez。 但是,它说我的PC上安装的Python版本不是2.7(我有2.7.10;我需要2.7.0吗?为此吗?)此外,此下载链接适用于32位系统,这可能是其无法在我的系统上运行的原因。
所以我问:1.如何解决此错误?
当我尝试使用pip安装pybluez时,输出错误:

2.使用https://pypi.python.org/pypi/PyBluez下载是否需要python 2.7.0和32位系统?如果是这样,有人可以为64位系统提出更好的方法吗?3.还有其他蓝牙模块可以替代吗?
Tom*_*asz 10
我已经使用python3.6为win10x64成功构建了pybluez
python setup.py install快乐蓝牙
这是一个“扩展解决方案”,它补充了发布的其他答案。
Linux 基本上在任何环境下都可以轻松支持蓝牙。Python 3内置套接字对象甚至可以通过蓝牙工作。但对于 Windows 来说,还有一些障碍需要克服。标准解决方案是使用 PyBluez。如果你真的很幸运,你也许可以只使用pip install PyBluez-win10. 但是,如果失败,则可以通过预编译的“轮子”进行安装。
然而,给定的轮子仅适用于您的特定上下文,即确切的 Python 版本。因此,为了面向未来,如果您需要 PyBluez,您应该知道如何从源头为自己创建一个轮子。如果您还没有所需的所有软件并且不熟悉该过程的某些部分(例如使用 Anaconda),那么这将是一个漫长而烦人的过程。因此,如果您在一个团队中工作,我建议让一个人在这方面投入时间,然后与每个人共享轮子(希望他们使用相同版本的 Python!)。
以下是此处发布的内容的释义版本:https://github.com/pybluez/pybluez/issues/180,其中包括实际开发人员的评论和方法。
下载并运行“Visual Studio 构建工具”安装程序:
有关与目标 Python 版本匹配的确切编译器和链接的官方列表,请参阅: https: //wiki.python.org/moin/WindowsCompilers
这是 2019 年构建工具链接,适用于 Py3.7:
https://visualstudio.microsoft.com/downloads/#build-tools-for-visual-studio-2019
在安装过程中,您必须选择“ Visual C++ 构建工具”和“通用 Windows 平台构建工具”。保留默认选项(例如,包括 Windows 10 SDK)。
注意:这需要 15GB 的磁盘空间,并且需要一些耐心!
安装“Miniconda”:
https://docs.conda.io/en/latest/miniconda.html
选择与您想要安装 PyBluez 的目标 Python 版本的位集(32 与 64)相匹配的版本。
将 PyBluez 源存储库克隆到临时位置(例如您的桌面)。然后,启动终端并切换到该目录:
Run Code Online (Sandbox Code Playgroud)git clone https://github.com/pybluez/pybluez cd pybluez
Run Code Online (Sandbox Code Playgroud)set CONDA_DIR=%USERPROFILE%\Miniconda3 set PATH=%CONDA_DIR%\condabin;%PATH%
Run Code Online (Sandbox Code Playgroud)conda create -y -n pybluez python==3.7 activate pybluez
Run Code Online (Sandbox Code Playgroud)python setup.py install python setup.py bdist_wheel deactivate
Run Code Online (Sandbox Code Playgroud)copy .\dist\*.whl "%USERPROFILE%\Desktop" cd.. rd /s /q "%CONDA_DIR%\envs\pybluez" rd /s /q pybluez
最后,您可以将wheel安装到目标Python实例和/或存储/共享它:
这些文件的名称和路径会有所不同,因此请首先根据您的用例定义它们
Run Code Online (Sandbox Code Playgroud)set PYBLUEZ_WHEEL=%USERPROFILE%\Desktop\PyBluez-0.22-cp37-cp37m-win_amd64.whl set PYTHON_PATH=python
安装轮子:
Run Code Online (Sandbox Code Playgroud)%PYTHON_PATH% -m pip install "%PYBLUEZ_WHEEL%"
确认安装:
Run Code Online (Sandbox Code Playgroud)%PYTHON_PATH% -c "import bluetooth; print(bluetooth.__version__)"