Как удалить (или закодировать) специальные символы со страницы, указанной ниже?Очистить специальные символы в Python Beautiful Soup
import urllib2
from bs4 import BeautifulSoup
import re
link = "https://www.sec.gov/Archives/edgar/data/4281/000119312513062916/R2.htm"
request_headers = {"Accept-Language": "en-US,en;q=0.5", "User-Agent": "Mozilla/5.0 (Windows NT 10.0; WOW64; rv:40.0) Gecko/20100101 Firefox/40.0", "Accept": "text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8", "Referer": "http://google.com", "Connection": "keep-alive"}
request = urllib2.Request(link, headers=request_headers)
html = urllib2.urlopen(request).read()
soup = BeautifulSoup(html, "html.parser")
soup = soup.encode('utf-8', 'ignore')
print(soup)
В чем проблема? Почему вы кодируете результат перед его печатью? Stdout уже будет кодировать ваш язык. –
Я предполагаю, что проблема связана с тем, что вы получаете ошибку, анализируя html? Charset = us-ascii, поэтому нет необходимости кодировать что-либо, проблема в том, что html сломан. Вам понадобится другой синтаксический анализатор, html5lib и lxml смогут разобрать его, но с сломанным html, который знает, насколько хорошо. –