Результаты поиска

  1. RoyalBank

    Найти пики в массиве данных C#

    Опиши подробно свою задачу.
  2. RoyalBank

    Найти пики в массиве данных C#

    Замени в цикле double на int for (int i = 0; i < values.Count; i++)
  3. RoyalBank

    Чтение, запись и пауза в локе. Будет работать?

    Это стандартный лок, он распространяется на все работающие шаблоны в ZP. По хорошему, лучше создавать локи для каждой однотипной задачи запись/чтение. namespace ZennoLab.OwnCode { class Locker { public static object lstTxtProxy = new object(); // чтение прокси public static...
  4. RoyalBank

    Чтение, запись и пауза в локе. Будет работать?

    Напиши свой код, так будет проще разобраться.
  5. RoyalBank

    Спарсить данные из JSON через Json path

    Набросал в блокноте. Через библиотеку Newtonsoft.Json // Библиотека JSON using Newtonsoft.Json; using Newtonsoft.Json.Linq; JObject o = new JObject(); if (o.SelectToken("$.x.result[47].name") == "myName") string id = o.SelectToken("$.x.result[47].id").ToString();
  6. RoyalBank

    Снипет C# - поиск слова в переменной

    В моей практике не было ни одного случая, чтобы конструкция выдала ошибку. Другой вопрос, если файл большого размера, сотни мегабайт. Тогда это долго, и необходимо обращаться к другим методам.
  7. RoyalBank

    Снипет C# - поиск слова в переменной

    тогда можно одной строкой чекнуть, даже в локи можно не оборачивать, если только читаем if (File.ReadAllLines(@"C:\blacklist.txt").Where(arg => !string.IsNullOrWhiteSpace(arg)).Contains("site4.com")) return "y";
  8. RoyalBank

    Снипет C# - поиск слова в переменной

    Contains не подходит, в случаях, когда есть схожие вхождения, к примеру "site3.com не является bestsite3.com", выдаст наличие вхождения. По этой причине необходимо проверять по точному вхождению через ==, для этого придется разделять на строки.
  9. RoyalBank

    Снипет C# - поиск слова в переменной

    List<string> lst = new List<string>(); lst.AddRange(project.Variables["whitelist"].Value.Split(new[] {"\r\n"}, StringSplitOptions.None)); for (int d = 0; d < lst.Count; d++) { if (lst[d] == project.Variables["domain"].Value) { project.SendInfoToLog("yes",true); break; }...
  10. RoyalBank

    Инициализация таблицы в проекте с переменной вместо имени

    IZennoTable tb = project.Tables["tb"]; // Объявляешь таблицу string fp = project.Directory + @"\mytable.xlsx"; // Путь к файлу tb.Bind(fp); // Привязка
  11. RoyalBank

    Получить кол-во строк (lines) в переменной

    Если необходимо подсчитывать пустые строки, то RemoveEmptyEntries необходимо заменить на None return project.Variables["GET"].Value.Split(new[] {"\r\n"}, StringSplitOptions.None).Length;
  12. RoyalBank

    Получить кол-во строк (lines) в переменной

    string[] array = project.Variables["GET"].Value.Split(new[] {"\r\n"}, StringSplitOptions.RemoveEmptyEntries); return array.Length;
  13. RoyalBank

    Логин и пароль в txt

    string[] array = project.Variable["lp"].Value.Split(new[] {":"}, StringSplitOptions.None); project.Variable["login"].Value = array [0]; project.Variable["password"].Value = array [1];
  14. RoyalBank

    C#

    // Замени "lstN.Count" на необходимое число. for (int n = 1; n < 80; n++)
  15. RoyalBank

    C#

    List<string> lstT = new List<string>(); // Временный список IZennoList lstN = project.Lists["lstN"]; // Список с числами for (int n = 1; n < lstN.Count; n++) if (!lstN.Contains(n.ToString())) lstT.Add(n.ToString()); return string.Join(";",lstT);
  16. RoyalBank

    Как изменить текст в списке по номеру строки?

    Давай разберем строку на составляющие. lst[n] = "..."; // Где [n] - порядковый номер строки. // Чтобы получить n из переменной, необходимо спарсить число. К примеру, номер находится в переменной "Number" int myNumber = int.Parse(project.Variables["Number"].Value); lst[myNumber] = "..."; //...
  17. RoyalBank

    Как изменить текст в списке по номеру строки?

    IZennoList lst = project.Lists["lst"]; // Объявляешь список lst[n] = "..."; // Присваиваешь значение
  18. RoyalBank

    Куча вопросов

    Не важно, легкая задача или сверх сложная, как правило, решает цена работы на единицу времени. Исходя из этого, можно ориентироваться на среднюю зарплату по отрасли, по России может составлять 75-150k руб или 470-940 руб час ($7-15 / час). Это средняя температура по больнице. С поправкой на...
  19. RoyalBank

    Помогите медведю пока он не сошёл с ума

    Норм получается, шаблоны на кубиках они такие. Капмонстр вообще тебе пока не нужен, закинь доллар в антикапчу, или другой сервис и хватит почти на 1000 капч. Также CapMonster Cloud дает $5 на баланс. После того, как изучишь вдоль и поперек кубики, и если задумаешься об оптимизации всего этого...
  20. RoyalBank

    [#C] Как поменять регистр всего списка на нижний

    IZennoList lst = project.Lists["lst"]; // Объявляешь список for (int i = 0; i < lst.Count; i++) lst[i] = lst[i].ToLower(); // Меняешь регистр
  21. RoyalBank

    Код С# double [] mas выдает ошибку

    Это вставляешь в кубик C# double[] xVal = new double[]{0, 1, 2}; double[] yVal = new double[]{20, 22, 24}; double rsquared; double yintercept; double slope; CommonCode.LinearRegression(xVal, yVal, 0, xVal.Length, out rsquared, out yintercept, out slope); //return yintercept.ToString()...
  22. RoyalBank

    Поиск одинаковых строк по регулярке в списке и удаление их. C#

    List<string> lst = new List<string>(); lst.AddRange(new string[]{"Вася. вышел в магазин","Петя. сел поесть","Саша. вынес мусор","Петя. любит кошек"}); List<string> names = new List<string>(); names.AddRange(new string[]{"Вася", "Саша"}); names.ForEach(n => { for (int i = 0; i <...
  23. RoyalBank

    Поиск одинаковых строк по регулярке в списке и удаление их. C#

    string name = "Вася"; List<string> lst = new List<string>(); lst.AddRange(new string[]{"Вася. вышел в магазин","Петя. сел поесть","Саша. вынес мусор","Петя. любит кошек"}); for (int i = 0; i < lst.Count(); i++) if (lst[i].ToLower().Contains(name.ToLower())) lst.RemoveAt(i);
  24. RoyalBank

    Помогите Переделать Сниппет

    Добавь первой строкой в цикле. var line = list[i];
  25. RoyalBank

    Помогите Переделать Сниппет

    Вот пример, как обернуть код, набросал в блокноте. Замени сроки в своем коде и должно быть норм. if (line.Contains("followers_count")) var followers_count = Regex.Match(line, @"(?<=followers_count"":)\d+.*?").Value.Trim(); else continue; if (line.Contains("time")) { var last_seen =...
  26. RoyalBank

    Помогите Переделать Сниппет

    Значит проверяй логику кода, у тебя цикл for отрабатывает все строки, которые ты кидаешь в лист, но при этом, одна из строк не содержит какого-то regex, тебе нужно в if проверку завернуть все Regex.Match
  27. RoyalBank

    Помогите Переделать Сниппет

    listID.Add(String.Format("id \"{0}\"", id));
  28. RoyalBank

    Код С# double [] mas выдает ошибку

    Нужно сначала разделить строку, затем каждое значение конвертировать. List<double> mas = new List<double>(); project.Variables["TYT_CHISLA"].Value.Split(new char[] { ',' }, StringSplitOptions.RemoveEmptyEntries) .Where(s => !string.IsNullOrWhiteSpace(s)) .ToList() .ForEach(d =>...
  29. RoyalBank

    Как воспроизвести звук?

    3 варианта воспроизведения звуков: https://zennolab.com/discussion/threads/23450/page-2#post-166032
  30. RoyalBank

    Перевести число в буквенную форму

    Можете почитать по ссылкам: https://rsdn.org/article/files/dotnet/RusNumber.xml http://ts-soft.ru/blog/number-to-words-converter
  31. RoyalBank

    Взять файл самого большого размера

    string file = Directory.GetFiles(@"C:\Path").OrderBy(f => new FileInfo(f).Length).ToList().Last(); return file;
  32. RoyalBank

    Ограничить потоки в шаблоне.

    Так должно работать, для кода необходимо было сделать проверку на имя шаблона, чтобы брать количество потоков для конкретного шаблона. int n = 5; List<string> tasks = ZennoPoster.TasksList.ToList(); for(int i = 0; tasks.Count > i; i++) {...
  33. RoyalBank

    Ограничить потоки в шаблоне.

    Как это относится, к теме поста? Я понимаю, что можно бесконечно набрасывать, и выкручиваться, но изначальный вопрос был об ограничении количества потоков. Что касается вашего вопроса, то можно продумать множество способов, как ограничить запуск шаблона, самое простое решение, это привязка...
  34. RoyalBank

    значение взятое из xml не могу сравнить в if, как сконвертировать?

    Все просто, у тебя id, не является числом. id="61771s67444" Можешь сделать простую проверку на наличие "s" if (id_by_xml.Contains("s")) { string [] sp = id_by_xml.Split("s"); id_by_xml = sp[0]; } int xml_id = int.Parse(id_by_xml); Код кривой, писал как пример логики.
  35. RoyalBank

    Ограничить потоки в шаблоне.

    Проверка имени проекта, как пример: string task_name = TextProcessing.ToLower(project.Name.Replace(".xmlz",""),"All"); // Получаем текущее имя проекта, из которого выполняется код. if (task_name != "название шаблона без .xmlz".ToLower()) throw new Exception("Нельзя переименовывать шаблон");
  36. RoyalBank

    Ограничить потоки в шаблоне.

    ZennoPoster 5.35.0.0 (30.09.2019) [+] Добавлен метод ZennoPoster.SetMaxThreads Если в ранней версии, то через костыль делать проверку int n = 5; // допустимое количество потоков List<string> tasks = ZennoPoster.TasksList.ToList(); // получаешь список тасков string lot =...
  37. RoyalBank

    Как эффективно обработать тысячи файлов без утечки RAM?

    string log = "log1;;log2;log3;;;log4;;log5;log6"; string[] array = log.Split(new[] {";"}, StringSplitOptions.None); string result = array [3]; // Отсчитываешь от нуля
  38. RoyalBank

    Как заполнить следующий пустой столбец ?

    Если есть цифра столбца, его порядковый номер, то можно генерировать буквенное обозначение столбца и обращаться к нему. // Добавляем кусок в общий код: public static string ColumnIndexToColumnLetter(int colIndex){ int div = colIndex; string colLetter = String.Empty; int mod = 0...
  39. RoyalBank

    Как записать много значений в switch?

    Так пусть составит словарь, во входных настройках он будет иметь читаемый для него вид продуктов, а в коде будет использовать любые аналоги, какие только придумает. Он же сам написал, что вторые значения наименований у него уже прописаны на латинице, что сложного составить словарь из двух...
  40. RoyalBank

    Как записать много значений в switch?

    Во входных настроках мультиселект со списком на русском. -> разделяем и кладем в список -> с помощью словаря делаем замены и отправляем в список. List<string> lst_p = new List<string>(); // лист для списка товаров // Словарь для замен Dictionary<string, string> d_p = new Dictionary<string...
  41. RoyalBank

    GoLoginApp - новый антидетект браузер

    У меня сайт даже не открывается, выдает ошибку PR_END_OF_FILE_ERROR.
  42. RoyalBank

    Зависает поток

    Добавлю в эту тему. Версия 5.22.0.0 Долго не мог найти концы одной проблеме, шаблон прекрасно работает в многопотоке, все отлажено и переналажено. Шаблон полностью в коде. Но иногда, вероятность 1:100 зависает инстанс. Именно инстанс, т.к. код продолжает исполняться, в лог выводит, что элементы...
  43. RoyalBank

    Как взять рандомную строку с списка но не последнюю

    List<string> listName = new List<string>(); listName.Clear(); listName.AddRange(new string[]{"string data", "string data 2", "string data 3", "string data 4", "string data 5", "string data 6", "string data 7", "string data 8", "string data 9", "string data 10"}); return listName[new...
  44. RoyalBank

    Как удалить пробелы в элементах списка?

    List<string> ListProducts = new List<string>(); string sss = "111, 222, 111,33 33, 33 33, ,11"; sss.Split(new char[] { ',' }, StringSplitOptions.RemoveEmptyEntries) .Where(s => !string.IsNullOrWhiteSpace(s)) .ToList() .ForEach(s => ListProducts.Add(s.Trim())); HashSet<string>...
  45. RoyalBank

    Как удалить пробелы в элементах списка?

    List<string> ListProducts = new List<string>(); string sss = "111, 222, 111,33 33, 33 33, ,11"; sss.Split(new char[] { ',' }, StringSplitOptions.RemoveEmptyEntries) .Where(s => !string.IsNullOrWhiteSpace(s)) .ToList() .ForEach(s => ListProducts.Add(s.Trim()));
  46. RoyalBank

    Нужен шаблон парсинга таблицы с сайта

    Выложи лучше dom страницы с таблицей.
  47. RoyalBank

    Как увеличивать число выполнений из шаблона?

    ZennoPoster.AddTries(Guid.Parse(project.TaskId), 1);
  48. RoyalBank

    C# объединить несколько кубиков.

    Да, уже допер, что эти грабли для округления. Набросал, уже дальше сам доделай по аналогии. double d = double.Parse("0.003456789", System.Globalization.NumberStyles.Any, System.Globalization.CultureInfo.InvariantCulture); string round = string.Empty; if (d > 1.00000000) round =...
  49. RoyalBank

    C# объединить несколько кубиков.

    Ты лучше объясни, что тебе нужно получить. У меня сомнения, что реализация кода через свич в твоем шаблоне работала. Свич работает по точному вхождению, а у тебя нужно сравнивать, если я правильно понял. Еще раз, у тебя на входе число 0.123456789. Оно находится между значениями 1.00000000 и...
  50. RoyalBank

    C# объединить несколько кубиков.

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