2014-05-10 2 views
-2

Я пытаюсь получить таблицу лиги Premier с этим кодом:Как конвертировать юникод, что я получаю с BeautifulSoup

from bs4 import BeautifulSoup 
import requests 
url ="http://www.premierleague.com/en-gb.html" 
r = requests.get(url) 
soup = BeautifulSoup(r.content) 
table = soup.find('table', {'class': 'leagueTable'}) 
rows = table.findAll('tr') 
data = [[td.text for td in tr.findAll("td")] for tr in rows] 

for i in data: 
    print i 

Все работает отлично, за исключением того, я получаю результаты в юникод. Как преобразовать его в простой текст?

+1

Является ли это полезно? http://stackoverflow.com/questions/1207457/convert-unicode-to-a-string-in-python-containing-extra-symbols – StefanNch

+0

Вы можете кодировать ваши юникодные укусы. Но зачем вам это делать? – cubuspl42

ответ

1

Вы можете изменить строку text.encode("utf-8"):

data = [[td.text.encode("utf-8") for td in tr.findAll("td")] for tr in rows] 
or str(td.text) 

Много информации в BeautifulSoup docs

Смежные вопросы