python學習之路-excel操作-讀取excel

最近需要將excel的數據導入到mysql中,用java寫比較麻煩,用python導入操作更加方便,對office的版本兼容性很強。

依賴包

import xlrd

具體方法及相關解釋

def readExcel(path):
    #爲文件地址xls和xlsx均可以
    try:
        # 獲取excel工作簿
        book = xlrd.open_workbook(path)
        print(sys.getsizeof(book))
        return book
    except Exception as e:
        print(e)
        print("open excel file failed!")
    #獲取excel所有sheet表名
    sheets = book.sheet_names()
    # 通過表名打開表
    for sheet in sheets:
        sh = book.sheet_by_name(sheet)
        #打開表後獲取所有行列
        rows = sh.nrows
        #循環遍歷獲取每行的值
        for row in rows:
        # for row in range(1,rows) 從第二行開始獲取對應一些有標題情況 
        #這裏的row_data 是個list 對應該行所有的列值
            row_data = sh.row_values(row)

注意

         在實際使用過程中,會發現python的xlrd可以直接讀取xls或者xlsx,但是會遇到一種僞xls文件是無法讀取的,這種僞xls一般是xml轉的xls 或者是html 傳的xls,一般打開會顯示擴展名與文件不符,是否繼續打開,你用nodepad++ 打開得到的是如圖一信息,而不是圖二

               

                                                                                       圖1 僞xls文件

                                

                                                                                      圖2 正經的xls文件

       目前針對這種情況,網上嘗試了一下尋找解決辦法,但是基本行不通,所以我的辦法就是隻能手動打開僞xls文件,另存爲真正的xls文件,如果有好辦法的夥伴們,可以告訴我一下。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章