mysql.py 3.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117
  1. """
  2. Mysql Functions
  3. """
  4. import pymysql
  5. class MysqlClient(object):
  6. """
  7. MySQL工具, env默认prod版本
  8. """
  9. def __init__(self):
  10. mysql_config = {
  11. # "host": "rm-bp1159bu17li9hi94.mysql.rds.aliyuncs.com",
  12. "host": "rr-bp1l12ea7e9wgu947.mysql.rds.aliyuncs.com",
  13. "port": 3306, # 端口号
  14. "user": "wx2016_longvideo", # mysql用户名
  15. "passwd": "wx2016_longvideoP@assword1234", # mysql用户登录密码
  16. "db": "longvideo", # 数据库名
  17. "charset": "utf8mb4" # 如果数据库里面的文本是utf8编码的,charset指定是utf8
  18. }
  19. self.connection = pymysql.connect(
  20. host=mysql_config['host'], # 数据库IP地址,内网地址
  21. port=mysql_config['port'], # 端口号
  22. user=mysql_config['user'], # mysql用户名
  23. passwd=mysql_config['passwd'], # mysql用户登录密码
  24. db=mysql_config['db'], # 数据库名
  25. charset=mysql_config['charset'] # 如果数据库里面的文本是utf8编码的,charset指定是utf8
  26. )
  27. def select(self, sql):
  28. """
  29. 查询
  30. :param sql:
  31. :return:
  32. """
  33. cursor = self.connection.cursor()
  34. cursor.execute(sql)
  35. data = cursor.fetchall()
  36. return data
  37. def update(self, sql):
  38. """
  39. 插入
  40. :param sql:
  41. :return:
  42. """
  43. cursor = self.connection.cursor()
  44. try:
  45. res = cursor.execute(sql)
  46. self.connection.commit()
  47. return res
  48. except Exception as e:
  49. self.connection.rollback()
  50. def close(self):
  51. """
  52. 关闭连接
  53. """
  54. self.connection.close()
  55. class MySQLClientSpider(object):
  56. """
  57. 爬虫的 mysql 配置
  58. """
  59. def __init__(self):
  60. mysql_config = {
  61. "host": "rm-bp1159bu17li9hi94.mysql.rds.aliyuncs.com", # 数据库IP地址,内网地址
  62. "port": 3306, # 端口号
  63. "user": "crawler", # mysql用户名
  64. "passwd": "crawler123456@", # mysql用户登录密码
  65. "db": "piaoquan-crawler", # 数据库名
  66. "charset": "utf8mb4" # 如果数据库里面的文本是utf8编码的,charset指定是utf8
  67. }
  68. self.connection = pymysql.connect(
  69. host=mysql_config['host'], # 数据库IP地址,内网地址
  70. port=mysql_config['port'], # 端口号
  71. user=mysql_config['user'], # mysql用户名
  72. passwd=mysql_config['passwd'], # mysql用户登录密码
  73. db=mysql_config['db'], # 数据库名
  74. charset=mysql_config['charset'] # 如果数据库里面的文本是utf8编码的,charset指定是utf8
  75. )
  76. def select(self, sql):
  77. """
  78. 查询
  79. :param sql:
  80. :return:
  81. """
  82. cursor = self.connection.cursor()
  83. cursor.execute(sql)
  84. data = cursor.fetchall()
  85. return data
  86. def update(self, sql):
  87. """
  88. 插入
  89. :param sql:
  90. :return:
  91. """
  92. cursor = self.connection.cursor()
  93. try:
  94. res = cursor.execute(sql)
  95. self.connection.commit()
  96. return res
  97. except Exception as e:
  98. print("error", sql)
  99. print(e)
  100. self.connection.rollback()
  101. def close(self):
  102. """
  103. 关闭连接
  104. """
  105. self.connection.close()