Не могу сохранить таблицу в csv файл - PullRequest
0 голосов
/ 12 июля 2020

Я хочу очистить таблицу из Википедии с помощью scrappy, проблема в том, что я не могу сохранить ее как файл csv. Это мой код

import scrapy 

class DCspider( scrapy.Spider ):
    name = 'ufcspider'
    def start_requests(self):
        url_short = "https://en.wikipedia.org/wiki/Ultimate_Fighting_Championship_rankings"
        yield scrapy.Request(url = url_short,
                         callback = self.parse)
    def parse(self, response):
        # Create an extracted list of the table 
        table = response.xpath('//table[contains(@class,"wikitable")]/text()').extract()
        filepath = "ufc.csv"
        with open(filepath, "w") as f:
            f.writelines([parragraphs + "\n" 
            for parragraphs in table])

1 Ответ

0 голосов
/ 12 июля 2020

Вы можете записывать в файл csv с помощью библиотеки csv. Вам может помочь следующий код:

import scrapy 
import csv

class DCspider( scrapy.Spider ):
    name = 'ufcspider'
    def start_requests(self):
        url_short = "https://en.wikipedia.org/wiki/Ultimate_Fighting_Championship_rankings"
        yield scrapy.Request(url = url_short,
                     callback = self.parse)
    def parse(self, response):
        # Create an extracted list of the table 
        table = response.xpath('//table[contains(@class,"wikitable")]/text()').extract()
        filepath = "ufc.csv"
        with open(filepath, "w") as f:
            writer = csv.writer(f, delimiter=',')
            for parragraph in table:
                writer.writerow([parragraph + "\n"])
...