Слишком медленная запись в файл



  • Пишу парсер под hideme. У меня есть два списка - в одном ip адреса, в другом порты. Мне нужно совместить эти два списка, чтобы получились прокси, и записать их в файл. Я использую такой цикл:
    0_1503584739795_Screenshot_1.jpg
    Но этот процесс занимает много времени. Есть ли способ сделать это быстро?



  • @runbust сначала сделать новый список с айпи:порт, потом записать список в файл



  • @runbust или уже в записи создай вырежение.



  • @runbust Тоже в поисках быстрого решения такой же проблемы
    нужно склеить два списка, в каждом по 100к строчек, получается очень долго



  • @DrPrime если сначала формировать список а потом записывать этот список в файл, то по времени получается то же самое, что если каждую строчку записывать в файл.

    нужно решение, чтобы процесс "склейки" занимал 1-3 секунды,
    пока решение не найдено, использую руки и Sublime txt в котором оба списка склеиваются без проблем

    но хотелось бы получить автоматизированное решение, причем быстрое.



  • @foreva123, предполагаю, что через node.js можно в excel 2 столбца вставить.



  • @Antonio даже если можно, то смысл какой?
    таким образом можно попробовать и bat-ник просто запустить из BASа, который запустить Sublime, далее скрипт внутри Sublime обработает что надо и сохранит. Но это гемор же какой-то.

    хочется решение найти которе не будет выходить за рамки BAS


  • administrators

    @foreva123

    @DrPrime если сначала формировать список а потом записывать этот список в файл, то по времени получается то же самое, что если каждую строчку записывать в файл.

    Вы не правы. Если из двух списков формировать третий, то все операции будут происходить в оперативке, грубо говоря, а к винту BAS будет обращаться один раз, записывая третий список. Схему утрировал для наглядности.

    В режиме запуска 100к строчек обработает за секунду.


  • administrators

    @foreva123 Вот тестовый скрипт, он склеивает списки. Вот два текстовых файла на 100к строк.

    нужно склеить два списка, в каждом по 100к строчек, получается очень долго

    Скрипт в режиме запуска соединяет оба списка за 5 секунд:

    0_1522179105576_на форум 5.png



  • @Fox В Вашем примере какое было количество строчек в каждом списке?

    Я пробовал,на моем старом 5-летнем макбуке время выполнения одинаково долгое
    Единственно, я пробовал в режиме Записи, возможно это критично было


  • administrators

    @foreva123

    Вот два текстовых файла на 100к строк.

    В Вашем примере какое было количество строчек в каждом списке?

    Два текстовых файла, в каждом 100 000 строк, скрипт берёт первую строку из первого файла, через пробел добавляет первую строку из второго файла, сохраняет в список, пройдя все строки, сохраняет список в третий файл.

    Единственно, я пробовал в режиме Записи, возможно это критично было

    Я не просто так везде указывал, что запускать надо в режиме запуска.



  • @Fox Благодарю, попробую, отпишусь сюда же!



  • @foreva123, конечно он в режиме записи будет год делать.



  • @Fox Все решилось, спасибо!
    В режиме записи скрипт отработал и склеил огромные списки как нужно за 10 секунд
    Огромное спасибо за помощь, и как раз узнал что в режиме Запуска скрипт работает в мильён раз быстрее


  • administrators

    @foreva123 Пожалуйста. Поблагодарить здесь можно кнопочкой 0_1522182018122_на форум 7.png