beautifulsoup - 【答疑】python下如何把unicode编码的数据转为utf-8的?
PHP中文网
PHP中文网 2017-04-17 17:29:30
0
3
504

如题 现在有一个<class 'bs4.element.NavigableString'>type的数据
打印出来是这个样的
[u'3788.00', u'4788.00', u'6388.00', u'2398.00', u'5687.00', u'4088.00', u'4187.00', u'4087.00', u'2587.00', u'5188.00', u'4887.00', u'4287.00', u'4887.00', u'5787.00', u'4887.00', u'4888.00', u'\u8d27\u5230\u4ed8\u6b3e', u'6388.00', u'4987.00', u'5588.00', u'5588.00', u'5588.00', u'3288.00', u'3888.00', u'4788.00', u'4788.00', u'4788.00', u'4788.00', u'5588.00', u'4088.00', u'4788.00', u'4788.00', u'5588.00', u'5588.00', u'6388.00', u'6388.00', u'4788.00', u'5588.00', u'4988.00', u'4788.00', u'6388.00', u'6388.00', u'6388.00', u'5588.00', u'5588.00', u'5588.00', u'6388.00', u'5588.00', u'5588.00', u'4788.00', u'6388.00', u'6388.00', u'6388.00', u'5588.00', u'5588.00', u'6588.00', u'6588.00', u'5588.00', u'5588.00', u'5788.00']

当我用int()类型转换时 提示我:
ValueError: invalid literal for int() with base 10: '3788.00'

然后就在网上看到有网友说用 round(float(Price))的方法可行 #Price就是那个'class 'bs4.element.NavigableString'类型的数据

但是提示的是:
UnicodeEncodeError: 'decimal' codec can't encode characters in position 0-3: invalid decimal Unicode string

这种情况下如何解决呢? BTW我是想用list.append方法把上面这个列表添加到其他列表的时候出现的报错(可是明明昨晚还能运行的T-T)

PHP中文网
PHP中文网

认证高级PHP讲师

répondre à tous(3)
小葫芦

Il est possible d'utiliser

pour float, mais il existe un u'u8d27u5230u4ed8u6b3e'(货到付款) qui ne peut pas être converti en nombre à virgule flottante. Supprimez simplement cet élément ou ignorez-le lors du traitement.

巴扎黑

Ajoutez encode('utf-8') après les données que vous souhaitez générer

大家讲道理

Tout d'abord, le type de données que vous traitez est <class 'bs4.element.NavigableString'>type
Il s'agit de données de type NavigableString en HTML lues avec BeautifulSoup.

En fait, lors de la lecture avec BS4, vous devez utiliser l'encodage pour ajuster les données du HTML en utf-8

Exemple :

soup = BeautifulSoup(html.read().decode("utf-8"), "html.parser")

Ensuite, les données de type NavigableString affichées dans les balises Unicode ci-dessus seront affichées normalement.

Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal