@Foppy скорее всего в файле-задании строки просто размножены и не отличаются друг от друга никак. Поэтому баз при ошибке вытирает все копии строки.
Правится это добавлением в строку уникального идентификатора( порядковый номер строки или рандомный набор символов, который не будет использоваться в работе и будет стоять, например, последним в строке и не попадать под уже существующий парсинг csv строки).
В этом случае при краше будет удалятся только строка, которая была в работе.
Поймал интересный баг BAS (решено)
-
Версия последняя 25.7.0 и 25.8.0 проблема актуальна.
Есть код который отчищает список от ссылок ведущих не на домен который щас открыт
var filteredUrls = []; var domain = [[PARSED_URL_HOST]]; var regex = new RegExp(domain, 'i'); for (var i = 0; i < [[URLS_LIST]].length; i++) { var url = [[URLS_LIST]][i]; if (regex.test(url)) { filteredUrls.push(url); } } [[URLS_LIST]] = filteredUrls;Есть переменная CURRENT_URL которая получает ссылку на страницу которая открыта.. на 1 круге система работает отлично. А вот при повторной попытке получить CURRENT_URL оказывается что в нем уже есть данные, а именно после выполнения кода туда записало откинутую ссылку, которую сбросить никак не выходит. CURRENT_URL зависает ошибкой, и ни установка новой переменной, ни присвоение ей значения. Данный параметр не сбрасывает.
-
-
@Dodok Скорей всего в кубике выполнить код переопределил встроенную функцию, в БАС это очень легко получается сделать к сожалению
-
@Dodok Вот код действия Текущий url
url()!Ты его сломал своим кодом
-
Переделал работает.
Вдруг кому будет нужен код
var filteredUrls = []; var domain = [[PARSED_URL_HOST]]; var regex = new RegExp(domain, 'i'); for (var i = 0; i < [[URLS_LIST]].length; i++) { var currentUrl = [[URLS_LIST]][i]; if (regex.test(currentUrl)) { filteredUrls.push('url(' + currentUrl + ')'); } } [[URLS_LIST]] = filteredUrls; -
Так же код который может помочь убрать лишние ссылки на файлы из списка сайтов
// Исходный список URL-адресов var urlsList = [[URLS_LIST]]; // Окончания файлов для фильтрации var fileExtensions = ['.css', '.js', '.wow', '.php', '.doc', '.html', '.pdf', '.txt', '.zip', '.wav']; // Расширения файлов для фильтрации var mediaExtensions = ['.mp3', '.jpg', '.jpeg', '.png', '.gif', '.bmp', '.svg', '.webp', '.ico']; // Результирующий список URL-адресов var filteredUrls = []; urlsList.forEach(function(url) { // Проверка окончаний файлов var hasInvalidFileExtension = fileExtensions.some(function(extension) { var regex = new RegExp(extension.replace('.', '\\.') + '($|\\W)'); return regex.test(url); }); // Проверка расширений файлов var hasInvalidMediaExtension = mediaExtensions.some(function(extension) { var regex = new RegExp(extension.replace('.', '\\.') + '($|\\W)', 'i'); return regex.test(url); }); if (!hasInvalidFileExtension && !hasInvalidMediaExtension) { filteredUrls.push(url); } }); // Запись результата обратно в переменную [[URLS_LIST]] [[URLS_LIST]] = filteredUrls; // Преобразование списка в строку с новой строкой в качестве разделителя var result = filteredUrls.join('\n');