shop_mysql.py 1.5 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061
  1. from commons.conn_mysql import MySQLPoolOnline
  2. def _str_val(v):
  3. if v is None:
  4. return ""
  5. return str(v).strip()
  6. def main():
  7. conn = MySQLPoolOnline()
  8. sql = "SELECT * FROM `yaoex_provider_tmp`"
  9. data_list = conn.select_data(sql)
  10. if not data_list:
  11. print("tb_provider_tmp 无数据")
  12. return
  13. insert_sql = """
  14. INSERT
  15. IGNORE INTO `retrieve_scrape_shop_info` (
  16. `shop`,
  17. `contact_address`,
  18. `business_license_company`,
  19. `province`,
  20. `city`,
  21. `create_time`,
  22. `update_time`,
  23. `platform`
  24. ) VALUES (
  25. %s,
  26. %s,
  27. %s,
  28. %s,
  29. %s,
  30. %s,
  31. %s,
  32. %s
  33. ) \
  34. """
  35. rows = []
  36. for data in data_list:
  37. rows.append(
  38. (
  39. _str_val(data.get("name")),
  40. _str_val(data.get("addr")),
  41. _str_val(data.get("company_name")),
  42. _str_val(data.get("province_name")),
  43. _str_val(data.get("city_name")),
  44. data.get("create_time"),
  45. data.get("update_time"),
  46. _str_val("6"),
  47. )
  48. )
  49. conn.execute_many(insert_sql, rows)
  50. print(f"已提交 {len(rows)} 条(INSERT IGNORE:重复 shop 会被跳过)")
  51. if __name__ == "__main__":
  52. main()