2017-03-17 45 views
0

我想使用我的CSV文件製作熊貓數據框。UnicodeDecodeError製作熊貓數據框時

這裏是我的代碼:

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

base_url="http://www.hltv.org/?pageid=188&statsfilter=2816&offset=" 
with open('cs_data1.csv', 'w', newline='') as out_file: 
    for page in range(0,1200,50): 
     r=requests.get(base_url+str(page)) 
     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')): 
      buffer=StringIO(row.get_text(strip=True, separator=',')) 
      reader=csv.reader(buffer, skipinitialspace=True)   
      writer=csv.writer(out_file) 
      writer.writerows(reader) 

該代碼使得CSV文件,它工作正常。然後,我儘量讓大熊貓數據幀:

df=pandas.read_csv("cs_data1.csv") 
df 

在那裏我得到了錯誤:「UnicodeDecodeError錯誤:在第22位‘UTF-8’編解碼器不能解碼字節0xf6:無效的起始字節」。

什麼我應該嘗試編碼/解碼,以便數據框可以工作?

回答

1

你嘗試:

df = pandas.read_csv("cs_data1.csv", encoding='utf-8') 
+0

它現在!非常感謝:)有趣的是,很少有細節會影響結果。 –

+0

簡單而有效:) – zipa