Estoy intentando leer un archivo BMP en Python. Sé que los dos primeros bytes indican la firma BMP. Los siguientes 4 bytes son el tamaño del archivo. Cuando ejecuto:
fin = open("hi.bmp", "rb")
firm = fin.read(2)
file_size = int(fin.read(4))
Yo obtengo:
ValueError: literal no válido para int () con base 10: 'F # \ x13'
Lo que quiero hacer es leer esos cuatro bytes como un número entero, pero parece que Python los está leyendo como caracteres y devuelve una cadena, que no se puede convertir en un número entero. ¿Cómo puedo hacer esto correctamente?