我有代码可以从外部配置文件中读取凭据,

   configParser = ConfigParser.RawConfigParser()
   configFilePath = r'docs/credentials.cfg'
   configParser.read(configFilePath)




   User = configParser.get('your-config', 'user')
   Pswd = configParser.get('your-config','pswd')
   Host = configParser.get('your-config','hostdps')
   db = pymysql.connect(host=Host, user=User, password=Pswd, db='xyz', charset='utf8mb4', cursorclass=pymysql.cursors.DictCursor,local_infile=True)


密码包含特殊字符,例如:#?f8h!3,如何使connect语句理解这些字符。

我已经尝试过添加反斜杠,并在连接字符串中传递反斜杠,不确定如何获取?

最佳答案

错误是在配置文件中的密码字符串开头之前添加引号。

我使用的是:configParser = ConfigParser.RawConfigParser(),因此,它将“作为密码的一部分。

真傻。

关于python - python pymysql无法在密码字符串中接受特殊字符,如何绕过呢?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/42364530/

10-12 20:17