如何解码字符串以识别python中的法语字符 例如'Pneusété'应该像'Pneusété'
我试过这个,但看起来不起作用
var ='Pneus été'
print(var.decode('utf-8'))
这是我的原始代码:
from bs4 import BeautifulSoup
import os
import math
import requests
import pandas as pd
import helpers
import os
if __name__== '__main__':
soup = BeautifulSoup(open(os.getcwd()+"/Desktop/Pneus auto _ Michelin FR.html"), 'html.parser')
tyre_category = soup.find_all('div', class_='tyre')
for category in tyre_category:
tyre_name = category.img['alt']
tyre_season = category.find('span', class_='season-icon')['title']
url_for_tyre_details = category.find('a', class_='tyre-detail')['href']
print(tyre_name, tyre_season, url_for_tyre_details, sep=",")
输出:
MICHELIN Primacy 4,Pneus été,https://www.michelin.fr/pneus/michelin-primacy-4
MICHELIN Pilot Sport 4,Pneus été,https://www.michelin.fr/pneus/michelin-pilot-sport-4
MICHELIN Pilot Sport 4 S,Pneus été,https://www.michelin.fr/pneus/michelin-pilot-sport-4-s
MICHELIN Pilot Sport Cup 2,Pneus été,https://www.michelin.fr/pneus/michelin-pilot-sport-cup-2
MICHELIN CrossClimate+,toutes saisons,https://www.michelin.fr/pneus/michelin-crossclimateplus
MICHELIN Alpin 6,Pneus Hiver,https://www.michelin.fr/pneus/michelin-alpin-6
MICHELIN Pilot Alpin 5,Pneus Hiver,https://www.michelin.fr/pneus/michelin-pilot-alpin-5
MICHELIN Pilot Alpin PA4,Pneus Hiver,https://www.michelin.fr/pneus/michelin-pilot-alpin-pa4
请注意,变量 tyre_season 得到的印刷品就像这样的'Pneusété',我希望像'Pneusété'
答案 0 :(得分:0)
问题中的字符串包含的是unicode字符串Pneus été
的UTF-8表示形式。您可以这样尝试:
s = 'Pneus été'
s.encode(encoding='utf-8')
这导致编码的字节b'Pneus \xc3\xa9t\xc3\xa9'
或者反过来说:如果你取出字节并将它们解码为UTF-8:
s = b'Pneus \xC3\xA9t\xC3\xA9'
s.decode('utf-8')
你得到:'Pneus été'
作为unicode字符串。
因此,在代码中的某处,您已经读取了unicode字符串而没有正确解码。