I have a torrent file obtained by using requests.get() stored in a string and obtained like this:
import requests
headers = {'User-Agent': 'Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.11 (KHTML, like Gecko) Chrome/23.0.1271.64 Safari/537.11',
'Accept-Charset': 'utf-8',
'Connection': 'keep-alive'}
request = requests.get(url, headers=headers)
data = requests.text
I would like to write it to a binary file so that the data within it are correct and it is valid:
with open(name, "wb") as f:
f.write(data)
However I seem to not be able to write the string as pure binary data because python keeps trying to interpret it as Unicode and I get errors like: "UnicodeEncodeError: 'ascii' codec can't encode characters in position 3-9: ordinal not in range (128).
I have attempted to use bytearray but a similar problem arises: TypeError: unicode argument without an encoding.
Is there a way to just write the bytes in the string to a file as they are?
binary mode?