gpt4 book ai didi

python - 调用 Python 文件后 Excel CSV 输出出现错误

转载 作者:太空宇宙 更新时间:2023-11-04 08:29:45 25 4
gpt4 key购买 nike

目前正在努力处理 .csv 中的以下输出,其中它们是各种随机字符,其中是玩家的名称和值,而这些字符不应该存在

(我在下面给出了输出图片)

我想知道我在努力消除随机字符的代码中出了什么问题

我正在尝试删除下面的字符,例如 Â、Ã、©、‰ 等。有什么建议吗?

Python 代码

#importing

import requests
from bs4 import BeautifulSoup
import pandas as pd

headers = {'User-Agent':
'Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like
Gecko) Chrome/47.0.2526.106 Safari/537.36'}

#calling websites
page = "https://www.transfermarkt.co.uk/transfers/transferrekorde/statistik/top/plus/0/galerie/0?saison_id=2000"
pageTree = requests.get(page, headers=headers)
pageSoup = BeautifulSoup(pageTree.content, 'html.parser')

#calling players names
Players = pageSoup.find_all("a", {"class": "spielprofil_tooltip"})
#Let's look at the first name in the Players list.
Players[0].text

#calling value of players
Values = pageSoup.find_all("td", {"class": "rechts hauptlink"})
#Let's look at the first name in the Values list.
Values[0].text

PlayersList = []
ValuesList = []

for i in range(0,25):
PlayersList.append(Players[i].text)
ValuesList.append(Values[i].text)

df = pd.DataFrame({"Players":PlayersList,"Values":ValuesList})

df.to_csv('2000.csv', index=False)

df.head()

============================================= =====================

我的 Excel 输出

The Output

最佳答案

...
utf8_bom = '\xEF\xBB\xBF'
with open('2000.csv', 'w') as csv_file:
csv_file.write(utf8_bom)
df.to_csv(csv_file, index=False, mode='a')

说明: Material list 是byte order mark (q.v.)。如果 Excel 在 CSV 文件的开头找到它,它会使用它来确定编码,在您的情况下是 UTF-8(默认编码 - 正确 - 对于 Python 3)。


编辑

正如 Mark Tolonen 所指出的,上面的紧凑版本是以下代码:

df.to_csv('2000.csv', encoding='utf-8-sig', index=False)

编码名称中的-sig代表“签名”,即开头的BOM,微软软件使用它来检测编码。另见 Encodings and Unicodecodecs手册。

关于python - 调用 Python 文件后 Excel CSV 输出出现错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53797028/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com