Проблема с чтением html файла. UnicodeEncodeError: 'charmap' codec can't encode character
Тренируюсь писать парсеры.
Получив данные по ссылке сохраняю в файл html. Далее открываю файл, и ищу в нем по тегу необходимое.
При промежуточной попытке проверить через print, что нашлось, выдает ошибку:
File "D:\pythonProject\parsing1\dynamic_parsing\main.py", line 26, in <module>
scrap_master
File "D:\pythonProject\parsing1\dynamic_parsing\main.py", line 14, in scrap_master
file.write(req.text)
File "D:\python\lib\encodings\cp1251.py", line 19, in encode
return codecs.charmap_encode(input,self.errors,encoding_table)[0]
UnicodeEncodeError: 'charmap' codec can't encode character '\u20bd' in position 16449: character maps to <undefined>
Код такой:
req = requests.get(url, headers=header)
with open('temp_index.html', 'w', encoding='utf-8') as file:
file.write(req.text)
with open('temp_index.html', encoding='utf-8') as file:
source = file.read()
soup = BeautifulSoup(source, 'lxml')
all_product = soup.find_all('div', class_='x-product-card-description')
print(all_product)
Encoding при открытии файла пробовал убирать, как в примере по которому я иду, но не помогает. В Pycharm стоит utf-8. Прочел все ответы по данной теме. Во всех релевантных случаях не указывают кодировку или указывают неверно. Что я упускаю?
UPD: При попытке спарсить другой сайт, все работает при убранном encoding при открытии файла для чтения. Тем не менее интересно, что не так при первой попытке?