Python 解码字符串以识别法语字符

Python 解码字符串以识别法语字符,python,utf-8,decode,python-3.6,Python,Utf 8,Decode,Python 3.6,如何解码字符串以识别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__==

如何解码字符串以识别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_seasonget是这样打印的“PneusétÔ,我希望是这样的“Pneusété”

问题中的字符串包含的是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字符串。

嗯,该字符串不包含法语重音字符。它包含。该字符串最初是如何变成这样的?可能是重复的,您只是使用错误的/未指定的编码打开文件。向
打开
调用添加
ecocode='utf-8'
命名参数,应该可以。您愿意接受我的回答吗?很高兴知道它解决了你的问题!事实上,我曾试图刮取一个网页,当我想抓取这句话“Pneusété”并打印出来时,我得到了这个“Pneusété195;”,为什么会发生这种情况请发布你如何阅读来自Web服务器的响应,像这样的地方编码会引起争论。
如果uuu name_uuuuuuu='uu main_uuuuu':soup=beautifulusou(打开(“C:/Users/usrname/Desktop/Pneus auto uu米其林FR.html”),'lxml')tire_ucategory=soup.find_uall('div',class='tire')用于轮胎中的类别u category:tire_uname=category.img['alt']tire_useasure=category.find('span',class='seasure-icon')['title']url_u用于轮胎详细信息=category.find('a',class='tire-detail''uu-detail')['a',tire(轮胎名称、轮胎季节、轮胎详细信息的url,sep=“,”)print()
请检查上面的格式代码