Python 从CSV输出生成数据帧

Python 从CSV输出生成数据帧,python,csv,pandas,dataframe,Python,Csv,Pandas,Dataframe,这是我的密码: import requests, re, pandas, csv from bs4 import BeautifulSoup r=requests.get("http://www.hltv.org/?pageid=188&statsfilter=2816&offset=0") c=r.content table=BeautifulSoup(c,"html.parser") for row in table.find_all('div', style=re.c

这是我的密码:

import requests, re, pandas, csv
from bs4 import BeautifulSoup

r=requests.get("http://www.hltv.org/?pageid=188&statsfilter=2816&offset=0")
c=r.content

table=BeautifulSoup(c,"html.parser")

for row in table.find_all('div', style=re.compile(r'width:606px;height:22px;background-color')):
    data=row.get_text(strip=True, separator=',')
    print(data)
以下是刮取的输出:

5/3 17,Astralis (16),FaZe (13),inferno,IEM Katowice 2017
5/3 17,Astralis (16),FaZe (12),nuke,IEM Katowice 2017
5/3 17,Astralis (16),FaZe (12),overpass,IEM Katowice 2017
5/3 17,FaZe (16),Astralis (9),cache,IEM Katowice 2017
4/3 17,Astralis (16),Heroic (12),nuke,IEM Katowice 2017
4/3 17,Astralis (16),Heroic (12),train,IEM Katowice 2017
4/3 17,Immortals (10),FaZe (16),mirage,IEM Katowice 2017
2/3 17,Virtus.pro (14),Heroic (16),nuke,IEM Katowice 2017
2/3 17,Cloud9 (6),Natus Vincere (16),mirage,IEM Katowice 2017
2/3 17,SK (16),North (8),cbble,IEM Katowice 2017
2/3 17,Cloud9 (12),North (16),cbble,IEM Katowice 2017
2/3 17,Natus Vincere (12),Heroic (16),overpass,IEM Katowice 2017
2/3 17,Virtus.pro (16),SK (14),inferno,IEM Katowice 2017
从该输出生成pandas.DataFrame的好方法是什么?

您可以使用该函数。如果出于某种原因,您不想将字符串写入实际文件,您可以通过将字符串包装到对象中,让Panda认为您正在传递它


加载数据时,您希望数据是什么样子的?第一列应该是“日期”,如输出中的5/3/17;第二列是“团队1”,如输出中的Astralis;第三列是“团队3”,如输出中的Faze;第四列是“地图”,如输出中的地狱;第五列应该是“事件”,如输出中的IEM Katowice。是的,但是我应该先制作一些CSV文件。有没有什么方法可以在不首先生成csv文件的情况下生成数据帧。刮取的输出仅为CSV格式。@JuhoM您说过您的数据是CSV格式的。您的数据的确切格式是什么?您的数据当前采用的格式是什么?你把它当作一个字符串吗?对不起,把我的表达弄糊涂了。我从网站上抓取数据,输出数据类型为“”。我编辑了第一篇文章,所以你可以看到我的代码。@JuhoM我编辑了我的答案,以支持直接转换字符串
import pandas as pd
from io import StringIO

csv_string = '''
5/3 17,Astralis (16),FaZe (13),inferno,IEM Katowice 2017
5/3 17,Astralis (16),FaZe (12),nuke,IEM Katowice 2017
5/3 17,Astralis (16),FaZe (12),overpass,IEM Katowice 2017
5/3 17,FaZe (16),Astralis (9),cache,IEM Katowice 2017
4/3 17,Astralis (16),Heroic (12),nuke,IEM Katowice 2017
4/3 17,Astralis (16),Heroic (12),train,IEM Katowice 2017
4/3 17,Immortals (10),FaZe (16),mirage,IEM Katowice 2017
2/3 17,Virtus.pro (14),Heroic (16),nuke,IEM Katowice 2017
2/3 17,Cloud9 (6),Natus Vincere (16),mirage,IEM Katowice 2017
2/3 17,SK (16),North (8),cbble,IEM Katowice 2017
2/3 17,Cloud9 (12),North (16),cbble,IEM Katowice 2017
2/3 17,Natus Vincere (12),Heroic (16),overpass,IEM Katowice 2017
2/3 17,Virtus.pro (16),SK (14),inferno,IEM Katowice 2017
'''

csv_string_io = StringIO(csv_string)
frame = pd.read_csv(csv_string_file)