#python-3.x #beautifulsoup #python-requests
#python-3.x #beautifulsoup #python-запросы
Вопрос:
это мой код
import requests as re
from bs4 import BeautifulSoup as bs
r = re.get("https://skidlamer.github.io/js/Skidfest.user.js")
soup = bs(r.text,"lxml")
with open("script.txt","w") as file:
file.write(soup)
и это ошибка, которую я получаю
File "C:UsersAnonymouseAppDataLocalProgramsPythonPython37libencodingscp1252.py", line 19, in encode
return codecs.charmap_encode(input,self.errors,encoding_table)[0]
UnicodeEncodeError: 'charmap' codec can't encode character 'U0001f4a9' in position 38190: character maps to <undefined>
Комментарии:
1. Вы уверены, что эта ошибка исходит из приведенного выше кода? Код выходит из строя на ранней
file.write(soup)
стадии .2. Что именно вы хотите записать в файл? HTML? Вы хотите открыть файл в двоичном режиме. Попробуй
with open("script.txt","wb") as file:
3. Когда я запускаю приведенный выше код в ubuntu, он показывает
TypeError: write() argument must be str, not BeautifulSoup
. после преобразования объекта soup в str. Его работа.
Ответ №1:
я добавил .encode(«utf-8») после преобразования объекта beautiful soup в тип str, и это сработало