No module error while trying "Connect to AWS IoT"

0

I have followed the "Connect to AWS IoT" steps provided in AWS IOT (1.Register a device 2.Download a connection kit 3.Configure and test your device). When I tried to run the script, I am getting No module named AWSIoTPythonSDK.MQTTLib

Environment: Platform: Linux Choose a AWS IoT Device SDK: Python

More info:

user::~/Downloads/connect_device_package$ ./start.sh 

Downloading AWS IoT Root CA certificate from AWS...
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100  1188  100  1188    0     0   7378      0 --:--:-- --:--:-- --:--:--  7378

Cloning the AWS SDK...
Cloning into 'aws-iot-device-sdk-python'...
remote: Enumerating objects: 870, done.
remote: Counting objects: 100% (135/135), done.
remote: Compressing objects: 100% (77/77), done.
remote: Total 870 (delta 71), reused 58 (delta 58), pack-reused 735
Receiving objects: 100% (870/870), 334.31 KiB | 1.92 MiB/s, done.
Resolving deltas: 100% (423/423), done.

Installing AWS SDK...
~/Downloads/connect_device_package/aws-iot-device-sdk-python ~/Downloads/connect_device_package
Requirement already satisfied: AWSIoTPythonSDK in /home/om/.local/lib/python3.8/site-packages (1.4.9)
~/Downloads/connect_device_package

Running pub/sub sample application...
Traceback (most recent call last):
  File "aws-iot-device-sdk-python/samples/basicPubSub/basicPubSub.py", line 18, in <module>
    from AWSIoTPythonSDK.MQTTLib import AWSIoTMQTTClient
ImportError: No module named AWSIoTPythonSDK.MQTTLib
Om
질문됨 2년 전618회 조회
1개 답변
1
수락된 답변

Hi Om. I'm guessing you have both python2 and python3 installed. Can you run the following command to check the version?

python --version

If it's 2.x, that would explain what you're seeing. If so, easiest way out is probably to edit line 32 of start.sh to call python3 instead of python.

profile pictureAWS
전문가
Greg_B
답변함 2년 전
  • Thanks Greg. It is working now :). Yes, I have both 2.x and 3 versions.

로그인하지 않았습니다. 로그인해야 답변을 게시할 수 있습니다.

좋은 답변은 질문에 명확하게 답하고 건설적인 피드백을 제공하며 질문자의 전문적인 성장을 장려합니다.

질문 답변하기에 대한 가이드라인