Advertisement
Guest User

Untitled

a guest
Mar 2nd, 2016
77
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.31 KB | None | 0 0
  1. import argparse
  2. import pandas as pd
  3. import mysql.connector
  4. from sqlalchemy import create_engine
  5. from string import Template
  6. import os
  7.  
  8. import argparse
  9.  
  10. parser = argparse.ArgumentParser()
  11. parser.add_argument("-u", "--user", help="mysql user", nargs='?', const='')
  12. parser.add_argument("-p", "--password", help="mysql password", nargs='?', const='')
  13. parser.add_argument("-e", "--excel", help="Excel file to table-ize.\nIf the file does not exist try to create from table")
  14. parser.add_argument("database", help="database to use")
  15. parser.add_argument("table", help="table to create/export")
  16.  
  17. args = parser.parse_args()
  18.  
  19. excel_file = os.path.abspath(args.excel)
  20.  
  21. connection_template = Template('mysql+mysqlconnector://$user:$password@localhost/$database')
  22. connection_string = connection_template.substitute(user=args.user, password=args.password, database=args.database)
  23. print "Connecting to " + connection_string
  24. engine = create_engine(connection_string, echo=False)
  25.  
  26. if os.path.exists(excel_file):
  27. print "populating " + args.table
  28. records = pd.read_excel(excel_file)
  29. records.to_sql(name = args.table, con=engine, if_exists='append', index=False, chunksize=2)
  30. else:
  31. print "exporting " + args.table + " to " + excel_file
  32. records = pd.read_sql_table(args.table, engine)
  33. records.to_excel(excel_file, sheet_name=args.table)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement