1. ホーム
  2. python

[解決済み] Python 3.8.6 で gif ファイルからフレーム数を得るにはどうしたらいいですか?

2022-02-12 18:41:55

質問

gifのフォルダーから、txt文書上の番号で選択されたgifを読み込もうとしています。正しいものが選択されているのですが、選択されたgifからフレーム数を取得する方法がよくわかりません。 以下は、これまでのコードです。

    from tkinter import *
    from PIL import Image, ImageTk
    from time import sleep
    import os

    root = Tk()
    root.title("displaygif")
    root.geometry("404x484")

    with open('wantedgif/wantedgif.txt') as wantedgif:        #This is the file where the ID for the gif is
        gifID = wantedgif.readline(3)
        print (gifID)

    line_number = 0
    with open("CodeRef/gifIDList.txt", 'r') as read_obj:    #This is the file that has the ID and what 
                                                             the gif names are, under there respective ID
        for line in read_obj:
            line_number += 1
                if gifID in line:
                line_number -= 1
                gif = read_obj.readlines()
                print(gif[line_number])                     #This all seems to work fine

    im = Image.open('gif/' + gif[line_number].strip() + '.gif')    #Opens the gif using the gif name

gifのフレーム数をカウントする方法と、その表示方法がよくわかりません。数時間検索してみましたが、うまくいくものが見つかりません。何も取り込まないのが望ましいのですが、特に問題ありません。よろしくお願いします。

解決方法を教えてください。

を使用することができます。 im.n_frames で、GIF画像内のフレーム数を取得します。