Как преобразовать и сохранить датафрейм в CSV Python - PullRequest
0 голосов
/ 06 мая 2018

Есть ли способ преобразовать, а затем сохранить следующий фрейм данных в CSV-файл, как этот?

import requests
from bs4 import BeautifulSoup

url = 'https://ev-database.uk'
resp = requests.get(url)
soup = BeautifulSoup(resp.text, 'lxml')

urls = []
cars = []
for h in soup.find_all('h2'):
    a = h.find('a')
    cars.append(a.attrs['href'][10:])
    urls.append(a.attrs['href'])

import requests 
import pandas as pd

list_length = len(urls)
table = pd.DataFrame()

for x in range(5):
    page_link ='https://ev-database.uk' + urls[x]

    for i in range(1,3):
        next_table = pd.read_html(requests.get(page_link).content)[i]
        next_table[3] = cars[x]
        table = table.append(next_table, ignore_index = True)

Dataframe:

dataframe

csv.output:

csv.output

1 Ответ

0 голосов
/ 06 мая 2018

IIUC:

Использование,

table.set_index([3,0])[1].unstack().rename_axis([None]).to_csv('csv.output')

Выход:

                            Annual VED Annual VED * City - Cold Weather City - Cold Weather *  \
Audi-e-tron-Quattro                None         £310                None                260 mi   
Hyundai-Kona-Electric-64-kWh         £0         None              240 mi                  None   
Jaguar-I-Pace                      £310         None              250 mi                  None   
Nissan-Leaf                          £0         None              145 mi                  None   
Tesla-Model-3                        £0         None                None                195 mi   
...