Не указывать c предупреждение - PullRequest
0 голосов
/ 24 января 2020

Во-первых, при INSERT IGNORE, почему pymysql возвращает предупреждение?

/ python3 .6 / site-packages / pymysql / cursors.py: 170: Предупреждение : (1062, «Дублирующая запись« 2175891 »для ключа« ПЕРВИЧНЫЙ »))

И, во-вторых, есть ли способ подавить эти предупреждения? В настоящее время у меня есть:

warnings.filterwarnings("ignore", category=pymysql.Warning)

Тем не менее, я не хочу подавлять все pymysql предупреждения, только то, которое кажется немного неуместным.

1 Ответ

0 голосов
/ 24 января 2020

Используйте параметр сообщения. Он принимает регулярное выражение:

warnings.filterwarnings(
  action="ignore", 
  message=".*Duplicate entry.*", 
  category=pymysql.Warning
)

message - строка, содержащая регулярное выражение, которому должно соответствовать начало предупреждающего сообщения. Выражение скомпилировано так, что оно всегда учитывает регистр.

Документы здесь :

...