

PythonでPDFを読み込んでテキスト情報をExcelに変換しようと思っています。  
このサイト(<https://fastclassinfo.com/entry/python_pdf_to_excel/>)を参考にしましたが下記のエラーメッセージが発生しました。

[code]

    AttributeError
    'Page' object has no attribute 'getText'
    
[/code]

どうかお力添えを賜りたいです。よろしくお願いいたします。

[code]

    import fitz
    import openpyxl as px
    from openpyxl.styles import Alignment
     
    # プログラム2｜PDFテキストを格納するリスト作成
    item_list = []
     
    # プログラム3｜PDFファイルを開く
    filename = '20180319001_1.pdf'
    doc = fitz.open(filename)
     
    # プログラム4｜PDFを1ページずつテキストを取得
    for page in range(len(doc)):
        textblocks = doc[page].getText('blocks')
        for textblock in textblocks:
            if textblock[4].isspace() == False:
                item_list.append([page,textblock[4]])
     
    # プログラム5｜新しいエクセルを作成
    wb = px.Workbook()
    ws = wb.active
     
    # プログラム6｜エクセルの書式設定
    myalignment=Alignment(wrap_text=True, shrink_to_fit=False)
    ws.column_dimensions['C'].width = 100
     
    # プログラム7｜エクセルのヘッダーを出力
    headers = ['No', 'ページ', '内容']
    for i, header in enumerate(headers):
        ws.cell(row=1, column=1+i, value=headers[i])
     
    # プログラム8｜エクセルにPDFのテキストデータを出力
    for y, row in enumerate(item_list):
        ws.cell(row= y+2, column= 1, value= y+1)
        for x, cell in enumerate(row):
            ws.cell(row= y+2, column= x+2, value=item_list[y][x])
            ws.cell(row= y+2, column= x+2).alignment = myalignment
     
    # プログラム9｜エクセルファイルの保存
    excelname = f'{filename}_excel_convert.xlsx'
    wb.save(excelname)
    
[/code]

**追記**  
Python 3.9.7  
openpyxl Version: 3.0.4  
PyMuPDF 1.21.1


CC BY-SA 4.0
2023-01-04T06:28:01.950
93178
2023-01-04T07:14:28.350
2023-01-04T07:14:28.350
56378
56378
question
python python3
テキスト取得の際のAttributeError：'Page' object has no attribute 'getText'


PyMuPDF 1.20.0 では`getText`を`get_text`に変更すると上手く行くようです。

※ getTextと全く同じ動作をするかは分かりませんが、テキスト情報は取得出来ました。同じ情報が取得できるかどうかは質問者さんにて検証お願いします。


CC BY-SA 4.0
2023-01-04T06:54:53.777
93179
2023-01-04T06:54:53.777
39819
93178
answer