1 import sys 2 3 import adodbapi 4 5 try: 6 import adodbapi.is64bit as is64bit 7 8 is64 = is64bit.Python() 9 except ImportError: 10 is64 = False 11 12 if is64: 13 driver = "Microsoft.ACE.OLEDB.12.0" 14 else: 15 driver = "Microsoft.Jet.OLEDB.4.0" 16 extended = 'Extended Properties="Excel 8.0;HDR=Yes;IMEX=1;"' 17 18 try: # first command line argument will be xls file name -- default to the one written by xls_write.py 19 filename = sys.argv[1] 20 except IndexError: 21 filename = "xx.xls" 22 23 constr = "Provider=%s;Data Source=%s;%s" % (driver, filename, extended) 24 25 conn = adodbapi.connect(constr) 26 27 try: # second command line argument will be worksheet name -- default to first worksheet 28 sheet = sys.argv[2] 29 except IndexError: 30 # use ADO feature to get the name of the first worksheet 31 sheet = conn.get_table_names()[0] 32 33 print("Shreadsheet=%s Worksheet=%s" % (filename, sheet)) 34 print("------------------------------------------------------------") 35 crsr = conn.cursor() 36 sql = "SELECT * from [%s]" % sheet 37 crsr.execute(sql) 38 for row in crsr.fetchmany(10): 39 print(repr(row)) 40 crsr.close() 41 conn.close() 42