Прекрасный суп-скребок таблицы возвращает список строк вместо списка списков - PullRequest
0 голосов
/ 04 октября 2019

Использование Beautiful Soup для очистки сайта возвращает список строк вместо списка списков.

Я пробовал .replace, но он не работает со списком в цикле.

import bs4 as bs
import urllib.request
import csv
import pandas as pd
source = urllib.request.urlopen('https://www.basketball-reference.com/players/d/duncati01/gamelog/2015').read()

soup = bs.BeautifulSoup(source,'lxml')

f = csv.writer(open('bball_ref.csv','w'))

body = soup.body    
table = soup.select('#pgl_basic')
table_rows = table[0].find_all('tr')

for tr in table_rows:
    td = tr.find_all('td')
    row = [i.text for i in td]

    f.writerow([row])

with open('bball_ref.csv') as csvfile:
    bball_ref = csv.reader(csvfile,delimiter=",")
    rows = []
    for row in bball_ref:
        rows.append(row)

1 Ответ

1 голос
/ 04 октября 2019

row - это уже список, вам не нужно помещать вокруг него другой список, когда вы звоните f.writerow(). Это должно быть

f.writerow(list)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...