Како да снимите сцреенсхот и сачувате у МССКЛ базу података користећи Јава и Селениум Вебривер



Ово је за снимање екрана користећи Селениум Вебдривер и за спремање у МС СКЛ Датабасе. Слика се чува у бази података са именом слике која се додаје са именом прегледача, верзијом прегледача, редним бројем и именом сценарија. Овај код подржава Цхроме, Фирефок, Интернет Екплорер и Сафари.

Постоји још једна опција између линије 63-70 да бисте сачували слику у локалном фолдеру ако желите. Можете поставити мапу у локалном систему и спремити слику у мапу коју сте навели у пнг формату и бајт формату у МССкл бази података.

Снимите снимак екрана и снимите у МССКЛ базу података користећи Јава и Селениум Вебривер

пацкаге цом.маин;

импорт јава.авт.имаге.БуффередИмаге;

импорт јава.ио.Филе;

импорт јава.ио.ФилеИнпутСтреам;

импорт јава.ио.ИОЕкцептион;

импорт јава.ио.ИнпутСтреам;

импорт јава.скл.Цоннецтион;

импорт јава.скл.ДриверМанагер;

импорт јава.скл.ПрепаредСтатемент;

импорт јава.скл.РесултСет;

импорт јава.скл.СКЛЕкцептион;

импорт јава.утил.Пропертиес;

импорт јава.утил.цонцуррент.ТимеУнит;

импорт јавак.имагеио.ИмагеИО;

импорт орг.опенка.селениум.Цапабилитиес;

импорт орг.опенка.селениум.ЈавасцриптЕкецутор;

импорт орг.опенка.селениум.ОутпутТипе;

импорт орг.опенка.селениум.ТакесСцреенсхот;

импорт орг.опенка.селениум.ВебДривер;

импорт орг.опенка.селениум.ремоте.РемотеВебДривер;

публиц цласс ИмагеСаве {

привате статиц инт имагеСекНо = 0;

привате статиц Стринг сценНаме;

привате статиц ВебДривер бровсерДривер;

привате статиц инт бровсерВидтх;

привате статиц инт бровсерХеигхт;

публиц статиц Стринг бровсер;

публиц статиц ВебДривер дривер;

публиц статиц инт гетБровсерВидтх () {

ретурн бровсерВидтх;

}

публиц статиц инт гетБровсерХеигхт () {

ретурн бровсерХеигхт;

}

публиц статиц Стринг гетСценНаме () {

ретурн сценНаме;

}

публиц статиц инт гетИмагеСекНо () {

ретурн имагеСекНо;

}

публиц статиц воид маин (Стринг [] аргс)

// БровсерДривер.гетЦуррентДривер ();

}

публиц статиц воид аддСцреенсхот (ВебДривер драјвер) баца ИОЕкцептион,

ЦлассНотФоундЕкцептион, ИнтерруптедЕкцептион {

бајт [] сцрБите = гетСцреенСхотБитес (дривер);

бровсер = гетБровсерАндВерсион ();

Стринг сценариоНаме = гетСценНаме ();

Стринг имагеНаме = сценариоНаме + ”” + прегледач + ””

+ Систем.цуррентТимеМиллис () + “.пнг”;

Датотека сцрФиле = гетСцреенСхотФиле (дривер);

Стринг сцреенВидтхХеигхт = гетИмагеВидтхХеигхт (сцрФиле);

// ако желите да сачувате слику екрана у локалном систему, омогућите линију испод

// ФилеУтилс.цопиФиле (сцрФиле, нова датотека (“Ц: // сцреенсхот //” + имагеНаме));

инсертИмагеДБ (сцрБите, сценариоНаме, имагеНаме, сцреенВидтхХеигхт,

прегледач);

Тхреад.слееп (1000);

}

публиц статиц Стринг гетИмагеВидтхХеигхт (Датотека са сликом) баца ИОЕкцептион {

БуффередИмаге бимг = ИмагеИО.реад (имагеФиле);

инт имагеВидтх = бимг.гетВидтх ();

инт имагеХеигхт = бимг.гетХеигхт ();

ако (имагеВидтх! = 0) {

ретурн имагеВидтх + “к” + имагеХеигхт;

} елсе {

повратак “ФуллСцреенк” + имагеХеигхт;

}

}

публиц статиц Датотека гетСцреенСхотФиле (ВебДривер дривер) {

// ВебДривер дриверА = нев Аугментер (). Аугмент (дривер);

ретурн ((ТакесСцреенсхот) драјвер) .гетСцреенсхотАс (ОутпутТипе.ФИЛЕ);

}

јавни статички бајт [] гетСцреенСхотБитес (ВебДривер дривер) {

ретурн ((ТакесСцреенсхот) драјвер) .гетСцреенсхотАс (ОутпутТипе.БИТЕС);

}

публиц статиц воид инсертИмагеДБ (бајт [] имагеБите, Стринг сценНаме,

Стринг имагеНаме, Стринг сцреенВидтхХеигхт, Стринг бровсер)

тхровс ЦлассНотФоундЕкцептион {

Својства дбПроп = нев Пропертиес ();

ИнпутСтреам дбПропИнпут = нулл;

РесултСет рс = нулл;

ПрепаредСтатемент пс = нулл;

Цоннецтион цон = нулл;

// сетИмагеСекНо (гетИмагеСекНо () + 1);

инт секНо = гетИмагеСекНо ();

Систем.оут.принтлн (сценНаме + ”—-“ + бровсер + ”—-“

+ сцреенВидтхХеигхт + ”—- Број снимка:” + секНо);

покушати {

Стринг пропПатх = “.

дбПропИнпут = нови ФилеИнпутСтреам (пропПатх);

дбПроп.лоад (дбПропИнпут); // учитава датотеку својстава

Стринг дбДривер = (дбПроп.гетПроперти (“дбДривер”));

Стринг дбУРЛ = (дбПроп.гетПроперти (“дбУРЛ”));

Стринг стПро = (дбПроп.гетПроперти (“СПСкл”));

Цласс.форНаме (дбДривер);

цон = ДриверМанагер.гетЦоннецтион (дбУРЛ);

пс = цон.препареСтатемент (стПро);

јава.утил.Дате дате = нев јава.утил.Дате ();

јава.скл.Тиместамп склТиместамп = нев јава.скл.Тиместамп (дате.гетТиме ());

Систем.оут.принтлн (“Имаге Тиместамп =” + склТиместамп);

пс.сетЕсцапеПроцессинг (труе);

пс.сетКуериТимеоут (90); // вредност тимеоут-а може да се онемогући касније, слика

пс.сетСтринг (1, “Пројекат”);

пс.сетСтринг (2, сценНаме);

пс.сетСтринг (3, бровсер);

пс.сетСтринг (4, сцреенВидтхХеигхт);

пс.сетТиместамп (5, склТиместамп);

пс.сетИнт (6, секНо);

пс.сетСтринг (7, имагеНаме);

пс.сетБитес (8, имагеБите);

// коментар испод линије да онемогући ажурирање базе података

пс.екецутеУпдате ();

} цатцх (ИОЕкцептион е) {

е.принтСтацкТраце ();

} цатцх (СКЛЕкцептион е) {

е.принтСтацкТраце ();

} коначно {

покушати {

ако (дбПропИнпут! = нулл)

дбПропИнпут.цлосе ();

ако (рс! = нулл)

рс.цлосе ();

ако (пс! = нулл)

пс.цлосе ();

ако (цон! = нулл)

цон.цлосе ();

} цатцх (Екцептион е) {

е.принтСтацкТраце ();

}

}

}

публиц статиц Стринг гетБровсерАндВерсион () {

Стринг бровсер_версион = нулл;

Цапабилитиес цап = ((РемотеВебДривер) дривер) .гетЦапабилитиес ();

Стринг бровсернаме = цап.гетБровсерНаме ();

// Овај блок за проналажење броја ИЕ верзије

иф (“интернет екплорер” .екуалсИгнореЦасе (бровсернаме)) {

Стринг уАгент = (Стринг) ((ЈавасцриптЕкецутор) управљачки програм)

.екецутеСцрипт (“ретурн навигатор.усерАгент;”);

Систем.оут.принтлн (уАгент);

// уАгент врати као “МСИЕ 8.0 Виндовс” за ИЕ8

ако (уАгент.цонтаинс (“МСИЕ”) && уАгент.цонтаинс (“Виндовс”)) {

бровсер_версион = уАгент.субстринг (уАгент.индекОф (“МСИЕ”) + 5,

уАгент.индекОф (“Виндовс”) - 2);

} друго ако (уАгент.цонтаинс (“Тридент / 7.0”)) {

бровсер_версион = “11.0”;

} елсе {

бровсер_версион = “00”;

}

} елсе {

// Верзија претраживача за Фирефок и Цхроме

бровсер_версион = цап.гетВерсион (); // .сплит (“.”) [0];

}

Стринг бровсерверсион = бровсер_версион.субстринг (0,

бровсер_версион.индекОф (“.”));

Стринг бВерсион = Стринг.формат ("% 02д", Интегер.парсеИнт (бровсерверсион));

повратак ((име корисника) + “_” + бВерсион);

}

публиц статиц Стринг бровсерНамеЦонверт (Стринг бровсер_наме) {

иф (орг.апацхе.цоммонс.ланг3.СтрингУтилс.цонтаинсИгнореЦасе (

бровсер_наме, “екплорер”)) {

врати “ИЕ”;

} елсе иф (орг.апацхе.цоммонс.ланг3.СтрингУтилс.цонтаинсИгнореЦасе (

бровсер_наме, “фирефок”)) {

повратак “ФФ”;

} елсе иф (орг.апацхе.цоммонс.ланг3.СтрингУтилс.цонтаинсИгнореЦасе (

бровсер_наме, “цхроме”)) {

повратак “ЦХ”;

} елсе иф (орг.апацхе.цоммонс.ланг3.СтрингУтилс.цонтаинсИгнореЦасе (

бровсер_наме, “сафари”)) {

повратак “СФ”;

} елсе {

повратак “НА”;

}

}

}

МССКЛ база података за повезивање базе података са корисничким акредитивима и процедуром складиштења

################## дбЦоннецт.пропертиес ##################

дбДривер = цом.мицрософт.склсервер.јдбц.СКЛСерверДривер

дбУРЛ = јдбц: склсервер: // ИОУРСЕРВЕРУРЛ; датабасе = ДАТАБАСЕНАМЕ; усер = УСЕРНАМЕ; лозинка = ПАССВОРД

СПСкл = {цалл СТОРЕПРОЦЕДУРЕ (?, ?, ?, ?, ?, ?, ?, ?)?

Да бисте сачували у бази података, процедура за складиштење је већ креирана у овом примеру и сви ови подаци за повезивање базе података и процедура складиштења наведени су у датотеци својстава.

Име претраживача претвара се у 2 кратке форме као што су ФФ (Фирефок), ЦХ (Цхроме) итд. Ово је такође у могућности да пронађе верзију претраживача програмски укључујући број верзије Интернет Екплорера. Ова скрипта подржава Интернет Екплорер верзије 8, 9, 10, 11.

Претходни Чланак

Како сакрити нежељене апликације са Андроид екрана без деинсталације

Како сакрити нежељене апликације са Андроид екрана без деинсталације

Можда сте инсталирали неколико апликација на Андроид уређају које су потребне или нису потребне. Ове апликације би се налазиле на екрану Андроид телефона који се протеже на неколико екрана. Понекад ће бити потребно неколико минута да се провери да ли је потребна Апп апликација из ових Андроид Апп екосистема. Скоро све апликације инсталиране на А...

Sledeći Чланак

7 Бест ВПС ВПА Тестер Аппс фор Андроид

7 Бест ВПС ВПА Тестер Аппс фор Андроид

Да ли сте забринути за вашу ВиФи заштиту? Неко је већ хаковао вашу ВиФи мрежу? Па, постоје добре Андроид апликације за тестирање рањивости у вашој ВиФи мрежи које дозвољавају неовлаштеним корисницима приступ. Ове ВПА тестер апликације су довољно снажне да тестирају ваш ВиФи за могуће рањивости у мрежи. Без обзира да ли желите тестирати кућни ВиФи или канцеларијски ВиФи, морате ...