ippool.csv запись / чтение с проблемой словаря - PullRequest
0 голосов
/ 04 мая 2019

Я хочу использовать CSV-файл, чтобы сохранить некоторые прокси для паука (запросы), и отбросить те не работает.Тем не менее, когда я читаю данные в CSV-файл, и мне нужно использовать словарь, потому что запросы нужны.Несколько видов ошибок произошло из-за разных подходов.

Подход 1:

dict(list)

ValueError: элемент последовательности обновления словаря # 0 имеет длину 4;Требуется 2

Подход 2:

for item in list:
    mydict = dict(item) -< this line has the same error with approach 1
    newest.append(mydict)

Подход 3:

for item in list:
    key = item[0:6]
    value = item[8:]
    mydict = dict(zip(key,value))
    newest.append (mydict)

эта проблема в том, что ключ равен элементу, а значение пусто

Подход 4: аналогично подходу 3, но используйте str (item), а не item

, но напечатать вещь очень странная и будет показана в части 4

def wcsv():
    with open('proxies.csv', 'w') as pr:
        writer = csv.writer(pr)
        for dc in proxies:
            for key, value in dc.items():
                writer.writerow([key, value])
        pr.close()

def rcsv():
    with open('proxies.csv', 'r') as py:
        reader = csv.reader(py)
        #header = next(reader)
        proxylist = [row for row in reader]

Далее будетбыть подходами.

Пример печати 4 подхода, например:

list 

[['http', '203.76.xxx.xxx:xxxx'],['http','xxx.xxx.xxx.xxx: xx '], [] .....]

list[0]

[[' http ',' 203.76.xxx.xxx:xxxx '] правильно

str(list[0])

['http' 203.76.xxx.xxx:xxxx '] кажется, что проблема здесь ... Но я не знал, как ее решить И ключ, значение {' h ':' 2 ','[': '', 't': '3', "'": "'", 'p': '.'} Что это такое ??!

На самом деле, если это могло бы сработать, любой другой способ был бы хорошей новостью.

Я также где-то изменил с подходом 2, я забыл, это могло бы работать, но самая новая - только одна строка (последняя)) потому что весь ключ - «http», и весь словарь может показывать только один элемент, если ключ совпадает.На самом деле, я ожидаю список с несколькими словарями в нем.Как [{}, {}, {} .....] Не могли бы вы помочь мне с некоторыми кодами, которые могли бы работать.Большое вам спасибо.

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