Бесплатные снипеты на заказ

Dimionix

Moderator
Регистрация
09.04.2011
Сообщения
3 068
Благодарностей
3 100
Баллы
113

spbalexpiter

Client
Регистрация
24.11.2013
Сообщения
354
Благодарностей
56
Баллы
28

Dimionix

Moderator
Регистрация
09.04.2011
Сообщения
3 068
Благодарностей
3 100
Баллы
113
  • Спасибо
Реакции: spbalexpiter

Dimionix

Moderator
Регистрация
09.04.2011
Сообщения
3 068
Благодарностей
3 100
Баллы
113
Как создать файл?
По моему, и обычным кубиком пустой файл создается:
- экшен "Файлы > Записать текст"
- путь к файлу: {-Project.Directory-}\{-Variable.main_akk-}.txt
- поле "Что записать" оставить пустым.
 
  • Спасибо
Реакции: Sanekk и spbalexpiter

Ikigai

Client
Регистрация
13.12.2016
Сообщения
275
Благодарностей
27
Баллы
28
Есть ли у кого сниппет по таймеру в вк?)
 

Ikigai

Client
Регистрация
13.12.2016
Сообщения
275
Благодарностей
27
Баллы
28
Таймер = отложенный постинг в ВК. У меня есть в кубиках данный алгоритм , но занимает пространства немного =))
 

Ikigai

Client
Регистрация
13.12.2016
Сообщения
275
Благодарностей
27
Баллы
28
Следующий вопрос : есть сниппет по возрату сегодняшнего дня
Код:
return DateTime.Now.ToString("dd");
А как ее сразу присвоить какой либо переменной ?

Немного подумав нашел ответ ( сори не знаю как удалять свой пост ), поэтому напишу здесь может кому надо будет.

Код:
var day =  DateTime.Now.ToString("dd");
project.Variables["DayToday"].Value = day;
 

Valiksim

Client
Регистрация
14.04.2012
Сообщения
1 340
Благодарностей
298
Баллы
83
Помогите понять где косяк, что я не так делаю?
Надо принять заявки в друзья на ФБ. Иду на страницу со всеми заявками. По умолчанию, выводится только 50 заявок, чтобы получить остальные, надо нажать ссылку "Больше запросов", чтобы вывести остальные заявки. И вот тут, что-то не могу понять как это дело настроить. Без этого работает, но до 50 заявок. Надо получить все заявки
PHP:
int i=0;
while (true) {
    HtmlElementCollection AllOfZaprosy = instance.ActiveTab.FindElementsByXPath("//div[@class='phl']/descendant::button[string()='Подтвердите действие']");
    foreach (HtmlElement ZaprosConnect in AllOfZaprosy) {
        ZaprosConnect.Click();
        i++;
        Thread.Sleep(rndGenerator.Next(2000, 5000));
    }
    //Подтверждаем заявку в друзья
    Tab1.FindElementByXPath(".//button[string()='Подтвердите действие']", 0).Click();
    //Если заявки закончились
    if (Tab1.FindElementByXPath(".//button[string()='Подтвердите действие']", 0).IsVoid);
    //Надо проверить, существует ли кнопка-ссылка "Больше запросов" если "есть", нажать на неё
        {
        Tab1.FindElementByXPath(".//a[@class='pam uiBoxLightblue' and contains(text(), 'Больше запросов')]").Click();
    //Если нету выдаём в лог, что всё закончили
        } else {
        Global.SpecialForms.AlertNotificator.Instance.DisplayAlert("Завершение", "друзья УЖЕ закончились", null, 15000);
        break;
    }   
}
Что-то я намудрил с else, но что и как надо сделать не могу разобраться
 

Dimionix

Moderator
Регистрация
09.04.2011
Сообщения
3 068
Благодарностей
3 100
Баллы
113
Помогите понять где косяк, что я не так делаю?
Надо принять заявки в друзья на ФБ. Иду на страницу со всеми заявками. По умолчанию, выводится только 50 заявок, чтобы получить остальные, надо нажать ссылку "Больше запросов", чтобы вывести остальные заявки. И вот тут, что-то не могу понять как это дело настроить. Без этого работает, но до 50 заявок. Надо получить все заявки
Проще будет сначала прокликать ссылку "Больше запросов" до победного, пока она не исчезнет, а потом уже собрать коллекцию и подтвердить заявки в цикле.
 
  • Спасибо
Реакции: Valiksim

Valiksim

Client
Регистрация
14.04.2012
Сообщения
1 340
Благодарностей
298
Баллы
83
Проще будет сначала прокликать ссылку "Больше запросов" до победного, пока она не исчезнет, а потом уже собрать коллекцию и подтвердить заявки в цикле.
Тоже вариант, просто такие варианты есть в разных местах, и ссылки не видно пока не прокликаешь. Например, если выбирать в выпадающем меню.
Надо поэкспериментировать. Это ещё надо ждать, пока заявок будет больше 50-ти
 

Dimionix

Moderator
Регистрация
09.04.2011
Сообщения
3 068
Благодарностей
3 100
Баллы
113

Dimionix

Moderator
Регистрация
09.04.2011
Сообщения
3 068
Благодарностей
3 100
Баллы
113
Проверить нет возможности, но как-то так
C#:
Random rnd = new Random();
Tab tab = instance.ActiveTab;

HtmlElement he = tab.FindElementByXPath(".//a[@class='pam uiBoxLightblue' and contains(text(), 'Больше запросов')]", 0);
while (!he.IsVoid) {
    he.Click();
    Thread.Sleep(3000);
}

HtmlElementCollection heCol = tab.FindElementsByXPath(".//button[string()='Подтвердите действие']");
if ((heCol.IsVoid) || (heCol.ErrorDetected)) return null;
for (int i = 0; i < heCol.Count; i++) {
    heCol.GetByNumber(i).Click();
    Thread.Sleep(rnd.Next(2000, 5000));
}

Global.SpecialForms.AlertNotificator.Instance.DisplayAlert("Завершение", "друзья УЖЕ закончились", null, 15000);
 
  • Спасибо
Реакции: Valiksim

Chingis

Client
Регистрация
09.09.2016
Сообщения
107
Благодарностей
20
Баллы
18
Подскажите со снипетом:

Есть текст
Код:
текст 1 2 3 4 текст</a>

</td>
<td>223
текст 2 2 3 3 текст</a></label>

</td>
<td>111
Нужно все строки
Код:
текст 1 2 3 4 текст</a> и текст 2 2 3 3 текст</a></label>
положить в 1 список
А
Код:
<td>223 и <td>111
во второй
 

Dimionix

Moderator
Регистрация
09.04.2011
Сообщения
3 068
Благодарностей
3 100
Баллы
113
Подскажите со снипетом:
C#:
IZennoList list1 = project.Lists["List1"];
IZennoList list2 = project.Lists["List2"];
string text = project.Variables["Text"].Value;

list1.AddRange(Regex.Matches(text, @"(?m)^.+</a>.*$").Cast<Match>().Select(s => s.Value));
list2.AddRange(Regex.Matches(text, @"(?m)^<td>.+$").Cast<Match>().Select(s => s.Value));
 
  • Спасибо
Реакции: Chingis

Chingis

Client
Регистрация
09.09.2016
Сообщения
107
Благодарностей
20
Баллы
18
C#:
IZennoList list1 = project.Lists["List1"];
IZennoList list2 = project.Lists["List2"];
string text = project.Variables["Text"].Value;

list1.AddRange(Regex.Matches(text, @"(?m)^.+</a>.*$").Cast<Match>().Select(s => s.Value));
list2.AddRange(Regex.Matches(text, @"(?m)^<td>.+$").Cast<Match>().Select(s => s.Value));
не подскажешь еще как изменить регулярку @"(?m)^.+</a>.*$") чтоб парсился только текст перед тегами, </a> и </a></label>
пытаюсь вот так (?m)^.*</a>(</label>)*? но в конце текста остается </a>
 

Dimionix

Moderator
Регистрация
09.04.2011
Сообщения
3 068
Благодарностей
3 100
Баллы
113
не подскажешь еще как изменить регулярку @"(?m)^.+</a>.*$") чтоб парсился только текст перед тегами, </a> и </a></label>
пытаюсь вот так (?m)^.*</a>(</label>)*? но в конце текста остается </a>
Код:
(?m)^.+(?=</a>.*$)
 
  • Спасибо
Реакции: one и Chingis

Chingis

Client
Регистрация
09.09.2016
Сообщения
107
Благодарностей
20
Баллы
18
Спасибо!
 

atman

Client
Регистрация
06.01.2016
Сообщения
72
Благодарностей
1
Баллы
8
Подскажите как страницу обновить в активной вкладке?
 

Dimionix

Moderator
Регистрация
09.04.2011
Сообщения
3 068
Благодарностей
3 100
Баллы
113
Подскажите как страницу обновить в активной вкладке?
JavaScript
JavaScript:
location.reload(); // перезагрузка текущей страницы из кэша
location.reload(true); // перезагрузка текущей страницы с сервера
C#
C#:
instance.ActiveTab.MainDocument.EvaluateScript("location.reload()"); // перезагрузка текущей страницы из кэша
instance.ActiveTab.MainDocument.EvaluateScript("location.reload(true)"); // перезагрузка текущей страницы с сервера
 

404

Client
Регистрация
23.09.2011
Сообщения
112
Благодарностей
58
Баллы
28
есть способ получить длительность видео не открывая его?
 

Dimionix

Moderator
Регистрация
09.04.2011
Сообщения
3 068
Благодарностей
3 100
Баллы
113

Ikigai

Client
Регистрация
13.12.2016
Сообщения
275
Благодарностей
27
Баллы
28
Всем привет, есть сниппет по очистке всех переменных в проекте.

Код:
// Очистка всех переменных
var list = project.Variables.Keys.ToList();
for (int i = 0; i < list.Count; i++)
{
    project.Variables[list[i]].Value = string.Empty;
}
А как чистить все кроме переменной Counter ? Что бы значение данной переменной оставалось
 
  • Спасибо
Реакции: j2082192 и xopek2007

doc

Client
Регистрация
30.03.2012
Сообщения
8 606
Благодарностей
4 597
Баллы
113
Всем привет, есть сниппет по очистке всех переменных в проекте.

Код:
// Очистка всех переменных
var list = project.Variables.Keys.ToList();
for (int i = 0; i < list.Count; i++)
{
    project.Variables[list[i]].Value = string.Empty;
}
А как чистить все кроме переменной Counter ? Что бы значение данной переменной оставалось
Код:
// Очистка всех переменных
var list = project.Variables.Keys.ToList();
list.Remove("Counter");
for (int i = 0; i < list.Count; i++)
{
    project.Variables[list[i]].Value = string.Empty;
}
попробуй так
 
  • Спасибо
Реакции: Live9up

Dimionix

Moderator
Регистрация
09.04.2011
Сообщения
3 068
Благодарностей
3 100
Баллы
113
А как чистить все кроме переменной Counter ? Что бы значение данной переменной оставалось
C#:
foreach (string key in project.Variables.Keys)
    if (project.Variables[key].Name != "Counter")
        project.Variables[key].Value = string.Empty;
 

doc

Client
Регистрация
30.03.2012
Сообщения
8 606
Благодарностей
4 597
Баллы
113
  • Спасибо
Реакции: Dimionix

Dimionix

Moderator
Регистрация
09.04.2011
Сообщения
3 068
Благодарностей
3 100
Баллы
113

Ikigai

Client
Регистрация
13.12.2016
Сообщения
275
Благодарностей
27
Баллы
28
Спасибо , все отрабатывает отлично, а на будущее если несколько переменных то Counter0, Counter1, Counter2 , то так будет?
C#:
foreach (string key in project.Variables.Keys)
    if (key != "Counter0&&Counter1&&Counter2")
        project.Variables[key].Value = string.Empty;
 

Dimionix

Moderator
Регистрация
09.04.2011
Сообщения
3 068
Благодарностей
3 100
Баллы
113
а на будущее если несколько переменных то Counter0, Counter1, Counter2 , то так будет?
Так:
C#:
foreach (string key in project.Variables.Keys)
    if (key != "Counter0" && key != "Counter1" && key != "Counter2")
        project.Variables[key].Value = string.Empty;
А для данного конкретного случая, можно так:
C#:
foreach (string key in project.Variables.Keys)
    if (!key.Contains("Counter")) // если название переменной НЕ содержит слово "Counter"
        project.Variables[key].Value = string.Empty;
 

Ikigai

Client
Регистрация
13.12.2016
Сообщения
275
Благодарностей
27
Баллы
28
Вообще круто ) Димоникс ты - огонь чувак, всегда помогаешь))
Подскажите как грамотно упорядочить все сниппеты, видел люди как то через блокнот организуют ( может у кого скрины есть )
 

Valiksim

Client
Регистрация
14.04.2012
Сообщения
1 340
Благодарностей
298
Баллы
83
Подскажите как грамотно упорядочить все сниппеты, видел люди как то через блокнот организуют ( может у кого скрины есть )
У каждого додика своя методика, однако, я MindManager использую. Там и структуру можно выстроить и тексты сохранить, коды, а также ссылки и даже картинки и видео

Вообще круто ) Димоникс ты - огонь чувак, всегда помогаешь))
Есть подозрение, что это разработчики Зеннопостера бота такого сделали и нам бот отвечает. Иначе как объяснить тот факт, что он тут круглосуточно сидит? o_O
Но, в самом деле, помогает всегда от души. :ay:
 
  • Спасибо
Реакции: Wide

Кто просматривает тему: (Всего: 3, Пользователи: 0, Гости: 3)