2016-11-07 32 views
1

私は、古いExcelの.xlsファイルとしてエクスポートされたSASのファイルを持っています。このファイルをpython 3.5にインポートしたいと思います。拡張子がxlsの古いExcelファイルをインポートするにはどうすればよいですか?

私は:私は、ファイルを開いて、手動で現在の.xlsxファイルに保存し、私たちの場合

import pandas as pd 
Filewant = pd.read_excel("Filepath\\\Filename.xls") 

は私が

XLRDError: Unsupported format, or corrupt file: Expected BOF record; found b'<html xm' 

で最高潮に達するのエラーメッセージの束を得ます使用して同じコマンドライン:

Filewant = pd.read_excel( "ファイルパス\\ファイル名\の.xlsx")

の場合、ファイルはPythonに正しくインポートされます。しかし、私はプロセスをより自動化したいので、手動でファイルを.xlsx形式で保存して動作させる必要はありません。

+0

代わりに、 'ExcelFile.parse()'を試してみましたか? http://pandas.pydata.org/pandas-docs/version/0.17.1/generated/pandas.ExcelFile.parse.html – mmenschig

+1

SASの派生ファイルは確かにnative xlsであり、何らかのHTMLエクスポートではありませんxlsとラベル付けされていますか? –

+0

'openpyxl'モジュールを使います。 'wb = openpyxl.load_workbook( 'example.xlsx')'。これの例はhttps://automatetheboringstuff.com/chapter12/ – tadm123

答えて

0

エラーメッセージが表示されます。 found b'<html xm'ファイルはHTMLファイルであり、XLSファイルではありません。これはXLSファイルの作成をサポートしていないため、「古い」SASで一般的に行われましたが、ExcelはHTMLファイルの読み込みをサポートしていました。残念ながら

、MSOffice2K先もそれかかわらず、HTMLファイルを作成します。

+0

それで、私ができることは何ですか?私はopenpxyl.load_workbook( "FilePath")を試してエラーが発生しました: InvalidFileException:openpyxlは古い.xlsファイル形式をサポートしていません。このファイルを読むにはxlrdを使用するか、最新の.xlsxファイル形式に変換してください。だから私はxlrd.open_workbook( "FilePath")を使用して、次のエラーを受け取りました:XLRDError:サポートされていないフォーマット、または破損したファイル:期待されるBOFレコード。 found b ' Cousinits

+0

これはEXCELファイルではないHTMLファイルです。 HTMLファイルを読むことができる関数を使用する必要があります。 – Tom

0

SASの技術サポートは、これは仕事と私は.xlsxのファイルに.XLS SAS出力を変換する必要がありますということではないだろうと言ってくれましたここで.XLS拡張子を使用すると、ファイルをExcelで開くことができます。 VBScriptを使用してファイルを.XLSXに変換することはできますが、MSoffice2Kを使用してこれを行う方法はありません。

関連する問題