Как удалить предыдущую строку при чтении строки файла CSV с помощью Python3 - PullRequest
0 голосов
/ 13 мая 2018

Я хочу очистить 12 000 вики-страниц от этой категории вики. Для этого у меня есть все 12 000 вики-страниц в CSV-файле.Когда мой код запускается, он изменяет страницу, одну за другой.Как я могу удалить предыдущую строку при чтении (следующей) строки файла CSV с помощью python3?Если это возможно, оставшиеся строки в файле csv будет легко передать другому участнику вики.В противном случае я должен вручную открыть файл CSV, чтобы удалить «завершенные строки».

Мой код упрощен; -

import csv
import pywikibot

with open('0.csv', 'r') as csvfile:
    reader = csv.reader(csvfile,delimiter="~")
    for row in reader:
    #if len(row) == 8:
        wikiPage1 = row[0]
        indexPages = row[5]
        print (wikiPage1)

        site = pywikibot.Site('ta', 'wiktionary')
        page1 = pywikibot.Page(site, wikiPage1)

        page1.text = page1.text.replace('Number','எண்')
        page1.save(summary=''Number --> எண்') 

1 Ответ

0 голосов
/ 09 июля 2018

Я учился на двух веб-страницах page-1 , page-2 этого сайта.

Приведенный ниже код выполняет эту задачу; -

#-*- coding: utf-8 -*-

#bringing the needed library modules
import csv, time, subprocess

#subprocess.call("sed -i `` 1d 0-123.csv",shell=True)

WAIT_TIME = 10
with open('0-123.csv', 'r') as csvfile:
    reader = csv.reader(csvfile,delimiter="~")
    for row in reader:
#removing the first line of the csv        
        subprocess.call("sed -i `` 1d 0-123.csv",shell=True)
        wiktHeader1 = row[0]#.decode('utf-8')
        print ()
        print (wiktHeader1 + ' = படி-1: விக்சனரியின் தலைப்புச்சொல்.')
        time.sleep(WAIT_TIME)
...