Но появилась новая проблема. Иногда скрипт во время работы внезапно запрещает выделять действия. Т.е при клике на любое действие, оно просто не выделяется красным. Это второй баг, независимый от первого если что
Как в конце каждого потока проверять "Результаты" на дубли, чтобы во время парсинга гугла в окне "Результаты" строки всегда были без повторов?
-
@Revers Во сколько потоков работает скрипт? Можно по разному сделать, в зависимости от условий работы скрипта. Например отдельной функцией читать файл
links.txtи удалить дубликаты. Либо перед добавлением в файл проверить, есть ли такая ссылка в файле, если нет, то добавить. С большими объёмами данных лучше работать в базе.
Если эти ссылки будет потом использовать другой скрипт, можно его настроить использовать эту же базу и работать сразу, одновременно. -
@Revers замените результат на ресурс, с галочкой только запись. Добавьте раз в определенное время очистку дублей, например, в скрипте можно получить количество успехов на данный момент, сделать в скрипте условие if, если количество успехов кратно 100 (переменная с количеством успехов % 100 == 0), то получать расположение ресурса, куда пишем результаты, читать файл в список, удалить дубли, записать список в файл с перезаписью (в экшене записи в файл не ставить галочку дописывать файл). Так же что бы не нагружать оперативку при добавлении результата в ресурс ставим галочки только добавить в файл/базу, а для того что бы результаты добавлялись в лайве, ставим галочку добавить в файл/базу мгновенно
-
@Revers с вашим объемом данных это будет ресурсоемко - нужно будет прочитать файл в список и проверить существование строки в списке.
П.с. небольшое примечание к моему способу выше - после того, как перезапишите файл, очистите переменную, в которую вы читали файл, это можно сделать действием установить переменную, например в значение 0, или выполнить код delete VAR_имя_переменной