Telegram documentationをアップロードすると、ファイルのIDについては、次の言葉:電報APIファイル
ファイルのバイナリコンテンツは、その後の部分に分割されます。全ての部品は、同じサイズ(PART_SIZE)および以下の条件を は 満たされなければならないしている必要があります:1024 = 0(1キロバイトで割り切れる)
524288パーセントのPART_SIZE = 0(512キロバイトで割り切れるでなければならない
PART_SIZE%とpart_size)
のサイズがpart_sizeより小さい場合、最後の部分はこれらの条件を満たす必要はありません。各部分には、0から2,999の範囲の値を持つ file_partのシーケンス番号が必要です。
マイコード:
def check_conditions(file_name):
b = False
file_binary_data = open("D:\\" + file_name, "br").read()
length = len(bytearray(file_binary_data))
print(file_name + ", size: " + str(length) + " bytes")
for i in range(1, 3000):
part = length // i
if part % 1024 == 0 and 524288 % part == 0:
print("i: " + str(i) + " | part size: " + str(part))
b = True
if not b:
print("No mathces")
print()
check_conditions("The White Stripes - Truth Doesn't Make A Noise.mp3")
check_conditions("Depeche Mode - Precious.mp3")
check_conditions("Placebo - Meds.mp3")
出力:
The White Stripes - Truth Doesn't Make A Noise.mp3, size: 7782220 bytes
No mathces
Depeche Mode - Precious.mp3, size: 10298248 bytes
i: 1257 | part size: 8192
i: 2514 | part size: 4096
Placebo - Meds.mp3, size: 11808625 bytes
No mathces
間違いがありますか?または、すべてが大丈夫なら、満たしていないファイルをどうすればいいですか?