I'm using Jeff's demo code for using the YouTube API and Python to interact with captions for my videos. And I have it working great for my videos in English. Unfortunately, when I try to use it with my videos that have automatic transcripts in Spanish, which contain characters such as á¡, etc., I get an encoding error:
UnicodeDecodeError: 'ascii' codec can't decode byte 0xc3 in position 25: ordinal not in range(128)
My Python script has # -*- coding: utf-8 -*-
at the top and I've changed the CAPTIONS_LANGUAGE_CODE
to 'es'
, but it seems like the script is still interpreting the .srt file it downloads as ascii
rather than utf-8
. The line where it downloads the .srt file is:
if response_headers["status"] == "200": self.srt_captions = SubRipFile.from_string(body)
How can I get Python to consider the srt file as utf-8
so that it doesn't throw an encoding error?
Thanks!