繁体   English   中英

Bash 脚本找不到 Python MySQL.连接器模块

[英]Bash script can't find Python MySQL.Connector Module

我正在尝试使用 raspbian 在 raspberrypi0 上从 Linux bash 脚本运行 python 脚本。

当我单独运行 python 脚本时,它工作正常。 当我通过 bash 脚本运行脚本时,出现以下错误:

Traceback (most recent call list):
  File "sendUpdateQuery.py", line 3, in <module>
    import mysql.connector
ImportError: No module named mysql.connector

当我单独运行 python 脚本时: ./sendUpdateQuery.py它按预期运行和工作。 但是,一旦我尝试从以下 bash 脚本运行相同的 python 脚本,就会收到上述错误。

测试SS.sh

#! /bin/bash

sudo python sendUpdateQuery.py "INSERT INTO <tablename> (col1, col2, col3) VALUES (v1, v2, v3);"

发送更新查询.py:

#! /usr/bin/env python3

import mysql.connector
import smtplib
import sys

def main():

    # import mysql.connector

    cnx = mysql.connector.connect(user='user', password='<password>', host='<ip-address>', database='<database>

    try:
        cursor = cnx.cursor()
        cursor.execute(sys.argv[1])

    finally:
        cnx.commit()
        cnx.close()

if __name__ == "__main__":
    main()

我确保这两个文件都可以使用sudo chmod +x sendUpdateQuery.pysudo chmod +x testSS.sh来执行。

我尝试在程序的主 function 中导入 mysql.connector。 但我得到了同样的错误。 只是在不同的路线上。

我知道我安装了 mysql.connector。 我安装了以下两个模块:

pip3 install mysql-connector
sudo apt-get install python3-mysql.connector

还是没有骰子。

感谢那些在我的帖子中发表评论的人。 @404pio 和 @Poojan。 我安装了 python2.7 和 python 3,当我使用 python3 指定我的调用时,它起作用了! 非常感谢你们两个!

解决了我的问题的代码片段:

sudo python3 sendUpdateQuery.py "INSERT INTO <tablename> (col1, col2, col3) VALUES (v1, v2, v3);"

尝试使用以下命令安装 mysql-connector:

pip install mysql-connector-python

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM