为64位Windows 10 PC下载并安装PyBluez?

Vai*_*kar 3 bluetooth

我试图将蓝牙与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时,输出错误: 当我尝试使用pip安装pybluez时输出错误

2.使用https://pypi.python.org/pypi/PyBluez下载是否需要python 2.7.0和32位系统?如果是这样,有人可以为64位系统提出更好的方法吗?3.还有其他蓝牙模块可以替代吗?

Tom*_*asz 10

我已经使用python3.6为win10x64成功构建了pybluez

快乐蓝牙


Buv*_*inJ 6

这是一个“扩展解决方案”,它补充了发布的其他答案。

Linux 基本上在任何环境下都可以轻松支持蓝牙。Python 3内置套接字对象甚至可以通过蓝牙工作。但对于 Windows 来说,还有一些障碍需要克服。标准解决方案是使用 PyBluez。如果你真的很幸运,你也许可以只使用pip install PyBluez-win10. 但是,如果失败,则可以通过预编译的“轮子”进行安装。

然而,给定的轮子仅适用于您的特定上下文,即确切的 Python 版本。因此,为了面向未来,如果您需要 PyBluez,您应该知道如何从源头为自己创建一个轮子。如果您还没有所需的所有软件并且不熟悉该过程的某些部分(例如使用 Anaconda),那么这将是一个漫长而烦人的过程。因此,如果您在一个团队中工作,我建议让一个人在这方面投入时间,然后与每个人共享轮子(希望他们使用相同版本的 Python!)。

以下是此处发布的内容的释义版本:https://github.com/pybluez/pybluez/issues/180,其中包括实际开发人员的评论和方法。

  1. 下载并运行“Visual Studio 构建工具”安装程序:

    有关与目标 Python 版本匹配的确切编译器和链接的官方列表,请参阅: https: //wiki.python.org/moin/WindowsCompilers

    这是 2019 年构建工具链接,适用于 Py3.7:

    https://visualstudio.microsoft.com/downloads/#build-tools-for-visual-studio-2019

  2. 在安装过程中,您必须选择 Visual C++ 构建工具”和“通用 Windows 平台构建工具”。保留默认选项(例如,包括 Windows 10 SDK)。

    注意:这需要 15GB 的磁盘空间,并且需要一些耐心!

  3. 安装“Miniconda”:

    https://docs.conda.io/en/latest/miniconda.html

    选择与您想要安装 PyBluez 的目标 Python 版本的位集(32 与 64)相匹配的版本。

  4. 将 PyBluez 源存储库克隆到临时位置(例如您的桌面)。然后,启动终端并切换到该目录:

git clone https://github.com/pybluez/pybluez
cd pybluez
Run Code Online (Sandbox Code Playgroud)
  1. 如果您没有将 conda 放在系统路径上(因为安装程序建议不要这样做),您可以按照以下示例命令将其添加到此本地 CMD 会话:
set CONDA_DIR=%USERPROFILE%\Miniconda3    
set PATH=%CONDA_DIR%\condabin;%PATH%
Run Code Online (Sandbox Code Playgroud)
  1. 创建专用环境来使用所需的 Python 版本构建 pybluez。然后,启动它。下面的示例使用 Python 3.7,但相同的步骤也适用于其他版本(包括 Py 2.x 等)
conda create -y -n pybluez python==3.7
activate pybluez
Run Code Online (Sandbox Code Playgroud)
  1. 构建一个轮子文件。然后,离开专用环境。
python setup.py install
python setup.py bdist_wheel   
deactivate
Run Code Online (Sandbox Code Playgroud)
  1. 将轮子复制到桌面。从那里,您可以随心所欲地使用它。然后,删除 pybluez conda 环境和源存储库(因为您不再需要它们中的任何一个)。
copy .\dist\*.whl "%USERPROFILE%\Desktop"
cd..
rd /s /q "%CONDA_DIR%\envs\pybluez"
rd /s /q pybluez
Run Code Online (Sandbox Code Playgroud)
  1. 最后,您可以将wheel安装到目标Python实例和/或存储/共享它:

    这些文件的名称和路径会有所不同,因此请首先根据您的用例定义它们

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__)"
Run Code Online (Sandbox Code Playgroud)