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

AndrPr

Client
Регистрация
20.02.2019
Сообщения
26
Благодарностей
1
Баллы
3
Добрый день
Имеется код
Код:
driver.FindElementByXPath("//android.widget.TextView[contains(@resource-id, 'account_number')]").GetAttribute("text");
Каким образом можно положить полученное значение в переменную zennoposter?
 

inotoxic

Client
Регистрация
20.04.2015
Сообщения
354
Благодарностей
164
Баллы
43
Каким образом можно положить полученное значение в переменную zennoposter?
Код:
project.Variables["имя_переменной"].Value = driver.FindElementByXPath("//android.widget.TextView[contains(@resource-id, 'account_number')]").GetAttribute("text");
 
  • Спасибо
Реакции: AndrPr

AndrPr

Client
Регистрация
20.02.2019
Сообщения
26
Благодарностей
1
Баллы
3
Так, а каким образом можно использовать значение переменной zennoposter в коде?
Код:
driver.FindElementByXPath("//android.widget.EditText[contains(@resource-id, 'login')]").SendKeys("значение");
 

inotoxic

Client
Регистрация
20.04.2015
Сообщения
354
Благодарностей
164
Баллы
43
Код:
var stroka = driver.FindElementByXPath("//android.widget.EditText[contains(@resource-id, 'login')]").SendKeys("значение");
и уже далее в C# коде обращаться к переменной stroka
 

AndrPr

Client
Регистрация
20.02.2019
Сообщения
26
Благодарностей
1
Баллы
3
Код:
var stroka = driver.FindElementByXPath("//android.widget.EditText[contains(@resource-id, 'login')]").SendKeys("значение");
и уже далее в C# коде обращаться к переменной stroka
Я плохо понимаю в c#
Ситуация такая
Имеется переменная zennoposter login со значением pEpCU8Qm
Необходимо положить значение переменной login вот сюда:
Код:
driver.FindElementByXPath("//android.widget.EditText[contains(@resource-id, 'login')]").SendKeys("значениепеременнойlogin");
 

inotoxic

Client
Регистрация
20.04.2015
Сообщения
354
Благодарностей
164
Баллы
43
а...
Код:
var login = "pEpCU8Qm"
driver.FindElementByXPath("//android.widget.EditText[contains(@resource-id, 'login')]").SendKeys(login);

//или
driver.FindElementByXPath("//android.widget.EditText[contains(@resource-id, 'login')]").SendKeys(project.Variables["login"].Value);
 
  • Спасибо
Реакции: AndrPr

AndrPr

Client
Регистрация
20.02.2019
Сообщения
26
Благодарностей
1
Баллы
3
Добрый вечер
Возможно ли реализовать на c# нажатие горячих клавиш? ( необходимо для запуска стороннего приложения )
Например необходимо нажать Ctrl + Alt + F10
 

b1zar

Client
Регистрация
29.06.2019
Сообщения
107
Благодарностей
67
Баллы
28
Вот для моих нужд понабилось сравнение двух текстов по шинглу, тему нашел, код рабочий, но он берет текста из файлов и сравнивает их между собой, а я хочу сделать из переменной и сравнение 2 текстов с родительским текстом.
Вот оригинальный кусок кода:

Общий код
Код:
[LIST=1]
[*]namespace ZennoLab.OwnCode
[*]{
[*]   /// <summary>
[*]   /// A simple class of the common code
[*]   /// </summary>
[*]    public class CommonCode
[*]   {
[*]       /// <summary>
[*]       /// Lock this object to mark part of code for single thread execution
[*]       /// </summary>
[*]        public static object SyncObject = new object();
[*]       
[*]        public double checkSimilarity(string textin, string textout)
[*]       {
[*]              string text1 = GetText(textin);
[*]            string text2 = GetText(textout);
[*]           int length = 3;
[*]             
[*]            var nGramma1 = GetNGrammas(text1, length);
[*]            var nGramma2 = GetNGrammas(text2, length);
[*]

[*]            String.Concat(nGramma1.Count(), "\r\n");
[*]            String.Concat(nGramma2.Count(), "\r\n");
[*]           double result = CalcJk(nGramma1, nGramma2);
[*]           return result;
[*]   
[*]       }
[*]

[*]       static private string GetText(string path)
[*]       {
[*]            var reader = new StreamReader(path, System.Text.Encoding.UTF8);
[*]

[*]           return reader.ReadToEnd().ToLower();
[*]       }
[*]

[*]       static private IEnumerable<string> ToGrammasFormat(string text)
[*]       {
[*]            var grammInput = text
[*]                .Split(new char[] {'.', '!', '?', '(', ')', '[', ']', '{', '}'}, StringSplitOptions.RemoveEmptyEntries)
[*]                .Select(x => Regex.Replace(x, @"\P{L}+", " ", RegexOptions.Compiled).Trim()); 
[*]                                       
[*]           return grammInput;
[*]       }
[*]

[*]       static private IEnumerable<Tuple<string, int>> GetNGrammas(string text, int length)
[*]       {
[*]            var grammInput = ToGrammasFormat(text);
[*]

[*]            var nGramma = grammInput
[*]                .Where(line => line.Split(' ').Length >= length)             
[*]                .SelectMany(sentence => sentence
[*]                    .Split(' ')
[*]                    .Select((word, index) =>
[*]                        sentence
[*]                            .Split(' ').Skip(index))
[*]                            .Where(subline => subline.Count() >= length)
[*]                            .Select(subline => String.Join(" ",subline.Take(length)).Trim()))
[*]                .GroupBy(gramma => gramma)
[*]                .Select(group => Tuple.Create(group.Key, group.Count()));
[*]

[*]           return nGramma;
[*]       }
[*]

[*]       static private double CalcJk(IEnumerable<Tuple<string, int>> grammas1, IEnumerable<Tuple<string, int>> grammas2)
[*]       {
[*]            var totalGrammas = grammas1.Select(gramma => Tuple.Create(gramma.Item1, gramma.Item2, 0))
[*]                .Concat(grammas2.Select(gramma => Tuple.Create(gramma.Item1, 0, gramma.Item2)))
[*]                .GroupBy(gramma => gramma.Item1)
[*]                .Select(group => Tuple.Create(group.First().Item1, group.First().Item2, group.Last().Item3));
[*]

[*]           double common = 0, total = 0;
[*]            foreach (Tuple<string, int, int> tGramma in totalGrammas)
[*]           {
[*]                common += Math.Min(tGramma.Item2, tGramma.Item3);
[*]                total += Math.Max(tGramma.Item2, tGramma.Item3);
[*]           }
[*]

[*]           return common/total;
[*]       }
[*]   }
[*]}
[/LIST]
Снипет

Код:
[LIST=1]
[*]IZennoList texts = project.Lists["Texts"];
[*]var resultList = "";
[*]int similarIndexBound = Convert.ToInt32(project.Variables["similarIndexBound"].Value);
[*]

[*]List<string> textsCheck = new List<string>(texts);
[*]

[*]int count1 = texts.Count;
[*]int count2 = textsCheck.Count;
[*]int totalIteration = count1 * count2;
[*]int iteration = 0;
[*]

[*]foreach (string textin in textsCheck)
[*]{
[*]    foreach (string textout in texts)
[*]   {
[*]        iteration++;
[*]       if (textin == textout) { continue; }
[*]        CommonCode similarity = new CommonCode();
[*]       double result = similarity.checkSimilarity(textin, textout);
[*]        result *= 100;
[*]       int similarityIndex = (int)result;
[*]       if (similarityIndex > similarIndexBound)
[*]       {
[*]            project.Variables["Result"].Value = textin+";"+textout+";"+similarityIndex;
[*]       }
[*]        project.SendInfoToLog("", "Итерация "+Convert.ToString(iteration)+", всего итераций: "+totalIteration, true);
[*]   }
[*]}
[/LIST]
в этом снипете я почти не чего не трогал, за исключением переменной Result, теперь она отправляет не файл, как было, а в переменную.

Подскажите как мне сделать проверку на схожесть 2 текстов из переменной, знаний по c# не так много, но до этого хватало разобраться, а вот этот код для меня темный лес, пол дня убил, а результат не получил.
 

alexmin9559

Client
Регистрация
19.10.2013
Сообщения
20
Благодарностей
34
Баллы
13
Здравствуйте!
Подскажите пожалуйста, как вывести в win. форме текст из переменных zenno {-Variable.country-} - {-Variable.city-} и т.д. ?

Код:
System.Windows.Forms.Form F = new System.Windows.Forms.Form();

F.Text = "Информация о IP адресе и телефоне";
F.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen;
F.Width=1000;    //- задает ширину формы в пикселях
F.Height=500;    //- задает высоту формы в пикселях
//создаем текст
System.Windows.Forms.Label Label = new System.Windows.Forms.Label();
//задаем текст
Label.Text = "IP адрес - {-Variable.country-} - {-Variable.city-} - Телефон - {-Variable.Operator-} - {-Variable.Region-}";

//положение в окне
Label.Location = new System.Drawing.Point(60,50);
Label.Size = new System.Drawing.Size(580, 21);
Label.Font = new System.Drawing.Font("Arial", 12, FontStyle.Italic);
F.Controls.Add(Label);

//создаем кнопку
System.Windows.Forms.Button button = new System.Windows.Forms.Button();
//задаем имя чекбоксам
button.Text = "OK";
//положение в окне
button.Location = new System.Drawing.Point(300,350);
//размер кнопочки
button.Size=new System.Drawing.Size(150, 75);
//кидаем на форму
F.Controls.Add(button);
button.Click+= delegate(object sender, System.EventArgs e)
{
        F.Dispose();
};
//запускаем форму
F.ShowDialog();
 

samsonnn

Client
Регистрация
02.06.2015
Сообщения
1 777
Благодарностей
1 448
Баллы
113
Здравствуйте!
Подскажите пожалуйста, как вывести в win. форме текст из переменных zenno {-Variable.country-} - {-Variable.city-} и т.д. ?

Как то так)

C#:
string Country = project.Variables["country"].Value;
string City = project.Variables["city"].Value;
string Operator = project.Variables["Operator"].Value;
string Region = project.Variables["Region"].Value;

System.Windows.Forms.Form F = new System.Windows.Forms.Form();
F.Text = "Информация о IP адресе и телефоне";
F.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen;
F.Width=1000;    //- задает ширину формы в пикселях
F.Height=500;    //- задает высоту формы в пикселях
//создаем текст
System.Windows.Forms.Label Label = new System.Windows.Forms.Label();
//задаем текст
Label.Text = "IP адрес - " + Country +  " - " +  City + " - Телефон - " + Operator + " - " + Region;
//положение в окне
Label.Location = new System.Drawing.Point(60,50);
Label.Size = new System.Drawing.Size(580, 21);
Label.Font = new System.Drawing.Font("Arial", 12, FontStyle.Italic);
F.Controls.Add(Label);
//создаем кнопку
System.Windows.Forms.Button button = new System.Windows.Forms.Button();
//задаем имя чекбоксам
button.Text = "OK";
//положение в окне
button.Location = new System.Drawing.Point(300,350);
//размер кнопочки
button.Size=new System.Drawing.Size(150, 75);
//кидаем на форму
F.Controls.Add(button);
button.Click+= delegate(object sender, System.EventArgs e)
{
        F.Dispose();
};
//запускаем форму
F.ShowDialog();



 
Последнее редактирование:

alexmin9559

Client
Регистрация
19.10.2013
Сообщения
20
Благодарностей
34
Баллы
13

temass

Client
Регистрация
06.06.2015
Сообщения
98
Благодарностей
3
Баллы
8
Друзья подскажите пожалуйста, есть таблица, есть столбец а и столбец б, в столбце а слова, в столбце б цифры, как написать такой код, чтобы если в столбце б значение больше или равно указанному, бралось значение из столбца а и все эти значения столбца а ложились в список, спасибо за помощь!
 

Zedx

Client
Регистрация
12.06.2018
Сообщения
1 346
Благодарностей
910
Баллы
113
Приветствую! Как можно сконвертировать число в шестнадцатеричное и восьмеричное значение?
 

alexmin9559

Client
Регистрация
19.10.2013
Сообщения
20
Благодарностей
34
Баллы
13
Добрый день!

Форма win.- передает пароль в переменную "password" по нажатии кнопки "ОК".
Подскажите пожалуйста, что не так? В переменную "password" передается название кнопки - "ОК".

Код:
System.Windows.Forms.Form F = new System.Windows.Forms.Form();
F.Text = "Пароль от почты";
//создаем текстбокс
System.Windows.Forms.TextBox textb = new System.Windows.Forms.TextBox();
//указываем местоположение
textb.Location = new System.Drawing.Point(20,40);
// добавляем его на форму
F.Controls.Add(textb);

//Создаем GroupBox (группирующий бок)
System.Windows.Forms.GroupBox grbox = new System.Windows.Forms.GroupBox();
//называем группу
grbox.Text = "Пароль";
//говорим куда поставить групбокс
grbox.Location = new System.Drawing.Point(20,10);
//разрешаем им тянуться до подходящего размера
grbox.AutoSize=true;
//добавляем радиобаттоны на групбокс
grbox.Controls.Add(textb);
//добавляем групбокс на форму
F.Controls.Add(grbox);

//создаем кнопку
System.Windows.Forms.Button button = new System.Windows.Forms.Button();
//задаем имя чекбоксам
button.Text = "OK";
//положение в окне
button.Location = new System.Drawing.Point(50,150);
//размер кнопочки
button.Size=new System.Drawing.Size(80,30);

button.Click+= delegate(object sender, System.EventArgs e)
{   
project.Variables["password"].Value= textb.Text;
   
F.Close();
};

//кидаем на форму
F.Controls.Add(button);
//запускаем форму
F.ShowDialog();
 

samsonnn

Client
Регистрация
02.06.2015
Сообщения
1 777
Благодарностей
1 448
Баллы
113
Добрый день!

Форма win.- передает пароль в переменную "password" по нажатии кнопки "ОК".
Подскажите пожалуйста, что не так? В переменную "password" передается название кнопки - "ОК".
нужно установить галочку в C# кубике


а так все отрабатывает нормально



 

alexmin9559

Client
Регистрация
19.10.2013
Сообщения
20
Благодарностей
34
Баллы
13

Neadekvat007

Client
Регистрация
15.10.2018
Сообщения
23
Благодарностей
1
Баллы
3
Приветствую кто может подсказать есть код для загрузки фото на страницу facebook но он отрабатывает через раз не могу разобраться почему)И как можно брать из папки первое фото а не рандомное?
 

Вложения

  • 609 байт Просмотры: 12

Zheka84

Client
Регистрация
13.10.2018
Сообщения
163
Благодарностей
24
Баллы
18
Здравствуйте, уважаемые форумчани.
Подскажите пожалуйста, как можно на c# удалить все числа из списка, которые меньше чем чем 1000. Спасибо большое.
 

ZComand

Client
Регистрация
02.02.2016
Сообщения
57
Благодарностей
63
Баллы
18
как можно на c# удалить все числа из списка, которые меньше чем чем 1000
C#:
List<int> intList = new List<int>();
            intList = intList.Where( x => x > 999).ToList();//если у вас в списке лежат именно числа
            List<string> stringIntList = new List<string>();
            stringIntList = stringIntList.ConvertAll(x => int.Parse(x)).Where(x => x > 999).ToList().ConvertAll(x => x.ToString());//если в списке числа в виде строк, если используете список зенки то там строки!!
Пожалуйста :-)
 
  • Спасибо
Реакции: Zheka84

Zheka84

Client
Регистрация
13.10.2018
Сообщения
163
Благодарностей
24
Баллы
18
ZComand, спасибо большое за снипет, но у меня не получается, в c# пока очень слабые познания.
Есть список New, там только числа. Но я понимаю что они записаны как строки, получается я должен использовать второй кусок кода.
Составил вот такой код, он выполняется успешно, но в списке остаются все числа, в том числе меньше чем 999. Что я сделал не так?) Спасибо большое.

Код:
List<string> stringIntList = project.Lists["New"].ToList();
stringIntList = stringIntList.ConvertAll(x => int.Parse(x)).Where(x => x > 999).ToList().ConvertAll(x => x.ToString());
 
Последнее редактирование:

ZComand

Client
Регистрация
02.02.2016
Сообщения
57
Благодарностей
63
Баллы
18
List<string> stringIntList = project.Lists["New"].ToList();
stringIntList = stringIntList.ConvertAll(x => int.Parse(x)).Where(x => x > 999).ToList().ConvertAll(x => x.ToString());
В этом примере у вас создается новый объект который не вносит изменения в исходный список. Это делает екстеншен ToList();
Чтобы внести изменения в IZennoList (это зеноввский список) добавьте эти две строчки в конце написанного вами кода:
project.Lists["New"].Clear();
project.Lists["New"].AddRange(stringIntList);

Это изменит список в зенке, и если он привязан к файлу на компе то в него тоже будут внесены изменения.
 
  • Спасибо
Реакции: Zheka84

ZComand

Client
Регистрация
02.02.2016
Сообщения
57
Благодарностей
63
Баллы
18
Привет, сделал описание к твоему коду:
C#:
Tab Active = instance.ActiveTab;

            // путь к папке с фото
            /*string PathImg = project.Directory + @"\Фото\"; так в шарпе не нужно ссылаться на пути к файлам*/
            string PathImg = Path.Combine(project.Directory, "Фото"); //так правильнее
            // переменная под рандомную фотку

            string RandPathPhoto = string.Empty;

            // коллекция фото из папки
            List<string> ListImg = new List<string>();

            // загружаем все фото в нашу коллекцию
            ListImg = Directory.GetFiles(PathImg, "*.jpg").ToList(); // тут НУЖНО использовать расширение для выбора именно фото, если у вас png, jpeg, имеются то
            //ListImg.AddRange(Directory.GetFiles(PathImg, "*.png"));
            //ListImg.AddRange(Directory.GetFiles(PathImg, "*.jpeg"));
            //ListImg.AddRange(Directory.GetFiles(PathImg, "*.gif"));

            // выбираем рандомнную фотку
            //RandPathPhoto = ListImg[new Random().Next(0, ListImg.Count - 1)]; //Свойство Count указывает на количество элементов, а индекс всегда будет на единицу меньше!!! в вашем примере часто появлялась ошибка OutOfRangeColection
           
            // берем первое фото
            RandPathPhoto = ListImg[0];

            // загружаем
            Active.FindElementByXPath("//input[@name='composer_photo']", 0).SetValue(RandPathPhoto, "Full");

            //так как вы удаляете фото с диска его так же нужно удалять из списка
            ListImg.Remove(RandPathPhoto);

            // удаляем из папки
            File.Delete(RandPathPhoto);//думаю что основная проблема в этой строчке. Инстанс заблокировал фаил, и пока он его не освободит его нельзя удалить.
            //попробуйте поиграться с задержками.
            //Ну а правильнее черный список вести ))
Пользуйся ;-)
 

ssXXXss

Client
Регистрация
23.12.2014
Сообщения
7 379
Благодарностей
2 041
Баллы
113
C#:
var newList = project.Lists["New"];
List<string> items = project.Lists["New"].ToList();
newList.Clear();

var result = from x in items where int.Parse(x) < 25 select x;
newList.AddRange(result);
 
  • Спасибо
Реакции: Zheka84

Zheka84

Client
Регистрация
13.10.2018
Сообщения
163
Благодарностей
24
Баллы
18
ZComan, спасибо за код и за разъяснение, теперь всё работает.
 
  • Спасибо
Реакции: ZComand

Matemat

Client
Регистрация
20.01.2018
Сообщения
45
Благодарностей
5
Баллы
8
Подскажите, пож-ста. Хочу сделать по мотивам победившей в последнем конкурсе статей единый снипет для загрузки профилей при регистрации со всеми параметрами. Нагенерировал я профилей в папку. Хочу получить список профилей из этой папки и положить их в список.
Нашел только как получить наименования файлов из папки
C#:
String[] Files;
Files =System.IO.Directory.GetFiles(project.Variables["generated_profile_folder"].Value);
А как дальше положить их в список?
 

orka13

Client
Регистрация
07.05.2015
Сообщения
2 177
Благодарностей
2 184
Баллы
113
Подскажите, пож-ста. Хочу сделать по мотивам победившей в последнем конкурсе статей единый снипет для загрузки профилей при регистрации со всеми параметрами. Нагенерировал я профилей в папку. Хочу получить список профилей из этой папки и положить их в список.
Нашел только как получить наименования файлов из папки
C#:
String[] Files;
Files =System.IO.Directory.GetFiles(project.Variables["generated_profile_folder"].Value);
А как дальше положить их в список?
C# список файлов в список site:zennolab.com
C#:
String[] Files;
Files = System.IO.Directory.GetFiles(project.Variables["generated_profile_folder"].Value);
for(int i=0;i<Files.Length;i++)
{
    project.Lists["Список 1"].Add(Files[i]);
}
 
  • Спасибо
Реакции: Sanekk и Matemat

Emmett_Red

Client
Регистрация
14.09.2019
Сообщения
96
Благодарностей
9
Баллы
8
Привет. Помогите сделать сниппет копирования файла с одно директории в другу с его переименованием из переменной. Спасибо!
 

Emmett_Red

Client
Регистрация
14.09.2019
Сообщения
96
Благодарностей
9
Баллы
8
И подскажите какой материал почитать или посмотреть C# для zenno
 

orka13

Client
Регистрация
07.05.2015
Сообщения
2 177
Благодарностей
2 184
Баллы
113
Привет. Помогите сделать сниппет копирования файла с одно директории в другу с его переименованием из переменной. Спасибо!
И подскажите какой материал почитать или посмотреть C# для zenno
C# копирования файла site:zennolab.com
C# переименовать файл site:zennolab.com
 

Babulia

Client
Регистрация
18.11.2018
Сообщения
14
Благодарностей
6
Баллы
3
как отчистить переменную парса перед парсом их 3 и каждую нужно отчистить перед парсов так как цикл стоит закрученный. к примеру переменная парса Variable3
 

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