我正在抓取棒球阵容,并使用熊猫将python代码导入excel。
我在寻找什么
团队1当前输出的示例:
['Daniel Norris', 'Masahiro Tanaka', 'Mikie Mahtook', etc.]
以上所有名称均带有引号,逗号和方括号。它们也都列在同一单元格中。
团队1的首选excel输出示例:
Daniel Norris Masahiro Tanaka Miki Mahtook etc.
如您在上面看到的,我希望删除所有引号,逗号和括号。另外,我希望每个团队的所有球员名称都位于各自的单元格中。
我一直在网上寻找正确的代码。到目前为止,我已经在stackoverflow.com上看到了三个示例,但是它们看起来与我的不同。我将展示所有三个。在这种情况下,可以使用其中之一。
使用字符串方法的示例1:
s = s.strip(['o','1'])
示例2使用替换方法:
s = s.replace("World", "")
示例3使用删除方法:
x = [1,2,3,4,2,2,3]
def remove_values_from_list(the_list, val):
for i in range(the_list.count(val)):
the_list.remove(val)
remove_values_from_list(x, 2)
print(x)
是否可以实施这些代码之一来执行上面列出的三个项目?如果没有,也许有人可以给我一些如何更好地实现目标的见解。我在网上看到有人建议使用正则表达式过滤器。不过,我不知道如何使用它们。预先感谢您的时间和精力!
顺便说一句,我是编码和抓取的新手。我非常感谢我能收到的任何帮助。如果您有任何疑问,或者如果我可以添加更多详细信息以更好地为您提供帮助,请告诉我。
到目前为止,这是我的代码:
from bs4 import BeautifulSoup
import requests
import pandas as pd
url = 'http://www.baseballpress.com/lineups'
soup = BeautifulSoup(requests.get(url).text, 'html.parser')
all_games = []
for g in soup.find_all(class_="game"):
players = g.find_all('a', class_='player-link')
game = {
'players': [_.text for _ in g.find_all('a', class_='player-link')],
}
all_games.append(game)
print(all_games)
df = pd.DataFrame.from_dict(all_games)
writer = pd.ExcelWriter('batting lineup.xlsx')
df.to_excel(writer, 'baseball_sheet')
writer.save()
答案 0 :(得分:0)
如果您想抓取卓越,我建议您使用CSV文件(而不是XLSX文件)。它们更易于管理和生成,而您可以使用csv内置模块。
这是您的代码示例。
props: ['name'],
computed: {
localizedName: function () {
return this.name.trim()
}
}