UnicodeEncodeError: 'ascii' codec can't encode characters in position 8-19: ordinal not in range(128)

Делаю простенький парсер, и столкнулся с проблемой что url на русском, и мне жалуется компилятор на ascii, я просмотрел англоязычный стековефлоу и русский и пару других сайтов, пытался через .join и encode('utf-8') а потом decode('utf-8'). Но не вышло, что я делаю не так?

t = 'Криптовалюты'
url = 'https://www.coingecko.com/ru/{0}/'.format(t).encode('utf-8')
print(url)
full_page = requests.get(url, headers=headers)
html = full_page.text
with io.open('coinmarketcap_html.txt', 'w', encoding='utf-8') as fff:
    fff.write(html)
local = Request(''.join(f"https://www.coingecko.com/ru/Криптовалюты/биткоин"), headers={'User-Agent': 'Mozilla/5.0'})
print(''.join(f"https://www.coingecko.com/ru/Криптовалюты/биткоин"))
response = urlopen(local)

htmlparser = etree.HTMLParser()
tree = etree.parse(response, htmlparser)

Ответы (0 шт):