Best Python code snippet using SeleniumBase
commands.py
Source:commands.py
1import request2import database3from datetime import datetime4def adaugare_serial(link):5 """6 Se va face request la IMDB pentru a se lua titlul7 si numarul de episoade al serialului specific.Apoi utilizatorul va trebui sa completeze cateva informatii8 despre acel serial,ex:ultimul episod vazut,scorul,cand a fost vazut. Input-ul primit de utilizator va trece9 printr-o serie de verificari. In final,dupa ce se aduna toate informatiile,functia va adauga in baza de date10 in tabela 'series' dar si link-ul ultimului episod vazut in tabela 'youtube'11 :param link : Functia primeste ca parametru link-ul dat de utilizator.12 :return : none13 """14 link_imdb = link15 title, episodes = request.get_informations(link.replace(" ", ""))16 if title != "" and episodes != "":17 print("Numarul de episoade al serialului " + title + " este " + episodes)18 verificare_1 = 019 while verificare_1 == 0:20 last_episode = input("Care a fost ultimul episod vazut ? : ")21 if 0 < int(last_episode) <= int(episodes):22 verificare_1 = 123 date_entry = input("Introdu data in care ai vazut ultimul episod (Format:year-month-day-hour) sau "24 "today : ")25 if date_entry.find("today") != -1:26 last_view = datetime.now()27 else:28 year, month, day, hour = map(int, date_entry.split('-'))29 last_view = datetime(year, month, day, hour)30 verificare_3 = 031 while verificare_3 == 0:32 score = input("Alege un scor de la 1 la 10: ")33 if 0 < int(score) <= 10:34 verificare_3 = 135 snooze = 036 database.add_serie(title, episodes, int(score), link_imdb, last_episode, last_view, snooze)37 seasons, new_link = request.get_numberOfSeasons(link)38 number_seasons = int(seasons)39 suma_episoadelor = int(episodes)40 ok = 041 last_episode_viewed = int(last_episode)42 while number_seasons > 0 and ok == 0:43 link_episodes = 'https://www.imdb.com' + new_link + str(number_seasons)44 number_episodes = request.get_numberOfEpisodes_season(link_episodes)45 if suma_episoadelor >= last_episode_viewed >= suma_episoadelor - int(46 number_episodes):47 episod_din_sezon = int(last_episode_viewed) - (suma_episoadelor - int(number_episodes))48 query = title + ' season ' + str(number_seasons) + ' episode ' + str(episod_din_sezon)49 link_youtube = request.videos_youtube(query)50 database.add_video_youtube(title, number_seasons, episod_din_sezon, link_youtube)51 ok = 152 else:53 suma_episoadelor = suma_episoadelor - int(number_episodes)54 number_seasons = number_seasons - 155 else:56 print("Scorul nu exista,mai incearca !")57 else:58 print("Episodul nu exista,mai incearca !")59 else:60 print("Nu s-a putut face request de la IMDB")61 print_link_youtube()62def delete_serie():63 """64 Functia va cere utilizatorului un input cu titlui serialului care doreste sa fie sters.Acesta va trece65 printr-o verificare si daca serialul exista,il va sterge din tabela 'series'.66 :return : none67 """68 list_series = database.get_all_series()69 titles = ""70 for serie in list_series:71 titles = titles + serie[0] + " ; "72 print("")73 print(titles)74 print("")75 verificare_1 = 076 while verificare_1 == 0:77 title = input("Ce serial vrei sa stergi ? : ")78 for serie in list_series:79 title_database = serie[0]80 if title_database == title:81 verificare_1 = 182 database.delete_serie(title)83 print("====================================")84 print("Comanda a fost efectuata cu succes !")85 print("====================================")86 if verificare_1 == 0:87 print("Serialul nu exista ,mai incearca ! ")88def snooze_serie():89 """90 Functia va cere utilizatorului un input cu titlui serialului care va trece printr-o verificare si daca serialul91 exista il va pune pe snooze daca nu este deja.92 :return : none93 """94 list_series = database.get_series()95 titles = ""96 for serie in list_series:97 titles = titles + serie[0] + "=" + str(serie[5]) + " ; "98 print("Serialele care nu sunt pe snooze")99 print(titles)100 verificare_1 = 0101 while verificare_1 == 0:102 title = input("Ce serial vrei sa pui pe snooze ? : ")103 for serie in list_series:104 title_database = serie[0]105 if title_database == title:106 verificare_1 = 1107 database.snooze_serie(title)108 print("====================================")109 print("Comanda a fost efectuata cu succes !")110 print("====================================")111 if verificare_1 == 0:112 print("Nu poti face snooze pe acest serial,mai incearca ! ")113def unsnooze_serie():114 """115 Functia va cere utilizatorului un input cu titlui serialului care va trece printr-o verificare si daca serialul116 exista il va pune pe unsnooze daca nu este deja.117 :return : none118 """119 list_series = database.get_series_snooze()120 titles = ""121 for serie in list_series:122 titles = titles + serie[0] + "=" + str(serie[1]) + " ; "123 print("Serialele care sunt deja pe snooze")124 print(titles)125 verificare_1 = 0126 while verificare_1 == 0:127 title = input("Ce serial vrei sa pui pe unsnooze ? : ")128 for serie in list_series:129 title_database = serie[0]130 if title_database == title:131 verificare_1 = 1132 database.unsnooze_serie(title)133 print("====================================")134 print("Comanda a fost efectuata cu succes !")135 print("====================================")136 if verificare_1 == 0:137 print("Nu poti face snooze pe acest serial,mai incearca ! ")138def modify_score():139 """140 Functia va cere utilizatorului un input cu titlui serialului care va trece printr-o verificare si daca serialul141 exista ii va cere un scor valid si apoi va modifica in baza de date scorul serialului ales.142 :return : none143 """144 list_series = database.get_all_series()145 titles = ""146 for serie in list_series:147 titles = titles + serie[0] + "=" + str(serie[2]) + " ; "148 print("Serialele au scorul :")149 print(titles)150 print("")151 verificare_1 = 0152 while verificare_1 == 0:153 title = input("Ce serial vrei sa modifici ? : ")154 for serie in list_series:155 title_database = serie[0]156 if title_database == title:157 verificare_1 = 1158 verificare_2 = 0159 while verificare_2 == 0:160 score_input = input("Alege un scor de la 1 la 10: ")161 if 0 < int(score_input) <= 10:162 database.update_score(title, score_input)163 verificare_2 = 1164 print("====================================")165 print("Comanda a fost efectuata cu succes !")166 print("====================================")167 else:168 print("Scorul nu exista,mai incearca !")169 if verificare_1 == 0:170 print("Acest serial nu se afla in baza de date,mai incearca !")171def listare():172 """173 Functia va parcurge serialele din baza de date si in momentul in care numarul de episoade din baza de date174 este mai mic decat numarul de episoade primit ca request de la IMDB il va anunta pe utilizator ca au mai aparut175 X episoade in serialul Y.176 :return : none177 """178 list_series = database.get_series()179 for serie in list_series:180 print(serie)181 for serie in list_series:182 title = serie[0]183 current_episodes = int(serie[1])184 score = serie[2]185 link = str(serie[3])186 last_episode = serie[4]187 new_episodes = int(request.get_episodes(link))188 if current_episodes < new_episodes:189 print("Titlul serialului :" + title)190 print("Scorul : " + str(score))191 print("Numarul vechi de episoade " + str(current_episodes))192 print("Numarul nou de episoade " + str(new_episodes))193 print("Ultimul episod pe care l-ai vazut a fost : " + str(last_episode))194 print("Au mai aparut " + str(new_episodes - current_episodes) + " episoade noi")195 print("=======================================================================")196 # database.update_episodes(title,new_episodes)197 elif new_episodes == 0:198 print("Nu s-a putut face request de la IMDB")199def modify_last_episode():200 """201 Functia va cere utilizatorului un input cu titlui serialului care va trece printr-o verificare si daca serialul202 exista ii va cere un episod valid pentru a-l modifica in baza de date. Apoi se va face un request la youtube203 cu episodul pe care a dorit sa-l modifice si il va insera link-ul query-ului in baza de date.204 :return : none205 """206 list_series = database.get_series()207 verificare_1 = 1208 while verificare_1 == 1:209 title = input("Ce serial vrei sa modifici ? : ")210 for serie in list_series:211 title_database = serie[0]212 if title_database == title:213 verificare_1 = 0214 current_episodes = int(serie[1])215 last_episode = serie[4]216 print("Numarul total de episoade : " + str(current_episodes))217 print("Ultimul episod vazut : " + str(last_episode))218 verificare_2 = 1219 while verificare_2 == 1:220 new_last_episode = input("Episod : ")221 if int(new_last_episode) <= current_episodes:222 database.modify_episode(title, new_last_episode)223 print("====================================")224 print("Comanda a fost efectuata cu succes !")225 print("====================================")226 verificare_2 = 0227 seasons, new_link = request.get_numberOfSeasons(serie[3])228 number_seasons = int(seasons)229 suma_episoadelor = int(current_episodes)230 ok = 0231 last_episode_viewed = int(last_episode)232 while number_seasons > 0 and ok == 0:233 link_episodes = 'https://www.imdb.com' + new_link + str(number_seasons)234 number_episodes = request.get_numberOfEpisodes_season(link_episodes)235 if suma_episoadelor >= last_episode_viewed >= suma_episoadelor - int(236 number_episodes):237 episod_din_sezon = int(last_episode_viewed) - (suma_episoadelor - int(number_episodes))238 query = title + ' season ' + str(number_seasons) + ' episode ' + str(episod_din_sezon)239 link_youtube = request.videos_youtube(query)240 database.add_video_youtube(title, number_seasons, episod_din_sezon, link_youtube)241 ok = 1242 else:243 suma_episoadelor = suma_episoadelor - int(number_episodes)244 number_seasons = number_seasons - 1245 else:246 print("Acest episod nu exista,mai incearca !")247 if verificare_1 == 1:248 print("Acest serial nu se afla in baza de date !")249def search_youtube():250 """251 Functia cere titlul unui serial iar daca acesta exista in baza de date,utilizatorul poate sa caute pe youtube252 un anumit episod dintr-un sezon,aceasta cautare va fi inregistrata in tabela 'youtube'.253 :return : none254 """255 list_series = database.get_series()256 titles = ""257 for serie in list_series:258 titles = titles + serie[0] + ";"259 print(titles)260 verificare_1 = 0261 while verificare_1 == 0:262 title = input("Ce serial vrei sa cauti ? : ")263 for serie in list_series:264 title_database = serie[0]265 link = str(serie[3])266 if title_database == title:267 verificare_1 = 1268 list_series = database.get_series()269 seasons, new_link = request.get_numberOfSeasons(link)270 number_seasons = int(seasons)271 verificare_2 = 0272 print("Numarul maxim de sezoane este :" + str(number_seasons))273 while verificare_2 == 0:274 season_input = input("Sezonul : ")275 if 0 < int(season_input) <= number_seasons:276 verificare_2 = 1277 link_episodes = 'https://www.imdb.com' + new_link + season_input278 number_episodes = request.get_numberOfEpisodes_season(link_episodes)279 verificare_3 = 0280 print("Numarul maxim de episoade este :" + str(number_episodes))281 while verificare_3 == 0:282 episode_input = input("Episodul : ")283 if 0 < int(episode_input) <= int(number_episodes):284 verificare_3 = 1285 query = title + ' season ' + season_input + ' episode ' + episode_input286 link_youtube = request.videos_youtube(query)287 print(query + ' ' + link_youtube)288 print("====================================")289 print("Comanda a fost efectuata cu succes !")290 print("====================================")291 else:292 print("Acest episod nu exista,mai incearca !")293 else:294 print("Acest sezon nu exista,mai incearca !")295 if verificare_1 == 0:296 print("Acest serial nu se afla in baza de date !")297def print_link_youtube():298 """299 Functia va afisa informatiile din tabela 'youtube',adica titlu,episodul,sezonul si link-ul catre youtube al300 ultimului episod vazut dar si a cautarilor utilizatorului.301 :return : none302 """303 series = database.print_youtube()304 print("")305 for serie in series:306 title = serie[1]307 season = serie[2]308 episode = serie[3]309 link_youtube = serie[4]310 print(str(title) + " , sezonul " + str(season) + " , episodul " + str(episode) + " => Link Youtube:" +311 link_youtube)312 print("")313def notificare():314 """315 Functia va verifica daca exista episoade noi pentru fiecare serial din baza de date.In cazul in care exista,ii va316 afisa un mesaj utilizatorul si anume ca 'Au mai aparut x episoade noi in serialul Y'.317 :return : none318 """319 list_series = database.get_series()320 for serie in list_series:321 title = serie[0]322 current_episodes = int(serie[1])323 link = str(serie[3])324 new_episodes = int(request.get_episodes(link))325 if current_episodes < new_episodes:326 print("")327 print("=======================================================================")328 print("Au mai aparut " + str(new_episodes - current_episodes) + " episoade noi in serialul " + str(title))329 print("=======================================================================")330 # database.update_episodes(title,new_episodes)331 elif new_episodes == 0:...
main.py
Source:main.py
1def citire_lista(lista_de_numere):2 string_citire = input("dati lista de numere separate prin virgula: ")3 valori = string_citire.split(",")4 for x in valori:5 lista_de_numere.append(int(x))6 return lista_de_numere7def prim(numar):8 """9 Verifica daca un numar intreg este prim10 :param numar: o valoare intreaga "numar"11 :return: True, daca "numar" este prim, respectiv False in caz contrar12 """13 if numar < 2:14 return False15 for i in range(2, numar // 2 + 1):16 if numar % i == 0:17 return False18 return True19def verificare_elemente_neprime(lista):20 """21 Verifica daca un sir de numere contine doar numere neprime22 :param lista: o lista de numere intregi23 :return: True, daca sirul are aceasta proprietate, respectiv False in caz contrar24 """25 for i in range(len(lista)):26 verificare = prim(lista[i])27 if verificare is True:28 return False29 return True30def get_longest_all_not_prime(lista):31 """32 Determina cea mai lunga subsecventa de elemente neprime dintr-o lista33 :param lista: o lista de numere intregi34 :return: o noua lista, ce reprezinta cea mai lunga subsecventa cu aceasta proprietate35 """36 rezultat = []37 for i in range(len(lista)):38 for j in range(i, len(lista)):39 verificare = verificare_elemente_neprime(lista[i:j + 1])40 if verificare is True and len(rezultat) < len(lista[i:j + 1]):41 rezultat = lista[i:j + 1]42 return rezultat43def verificare_elemente_prime(lista):44 """45 Verifica daca un sir de numere contine doar numere prime46 :param lista: o lista de numere intregi47 :return: True, daca sirul are aceasta proprietate, respectiv False in caz contrar48 """49 for i in range(len(lista)):50 verificare = prim(lista[i])51 if verificare is False:52 return False53 return True54def get_longest_all_prime(lista):55 """56 Determina cea mai lunga subsecventa de elemente prime dintr-o lista57 :param lista: o lista de numere intregi58 :return: o noua lista, ce reprezinta cea mai lunga subsecventa cu aceasta proprietate59 """60 rezultat = []61 for i in range(len(lista)):62 for j in range(i, len(lista)):63 verificare = verificare_elemente_prime(lista[i:j + 1])64 if verificare is True and len(rezultat) < len(lista[i:j + 1]):65 rezultat = lista[i:j + 1]66 return rezultat67def medie(lista):68 """69 Calculeaza media aritmetica a unui sir de numere70 :param lista: o lista de valori intregi71 :return: o valoare intreaga72 """73 suma = 074 numar_elemente = 075 for i in range(len(lista)):76 suma = suma + lista[i]77 numar_elemente = numar_elemente + 178 medie_aritmetica = suma / numar_elemente79 return medie_aritmetica80def verificare_medie_aritmetica(lista, numar):81 """82 Verifica daca media aritmetica a umui sir depaseste un intreg83 param lista: o lista de numere intregi84 param numar: o valoare inteaga85 :return: True, daca proprietatea este adevarata, respectiv False in caz contrar86 """87 medie_aritmetica = medie(lista)88 if medie_aritmetica < numar:89 return True90 return False91def get_longest_average_below(lista, numar):92 """93 Determina cea mai lunga subsecventa a umui sir cu proprietatea ca media sa nu depaseste valoarea unui intreg94 :param lista: o lista de numere intregi95 :param numar: o valoare intreaga96 :return: o noua lista, ce reprezinta secventa de lungime maxima cu aceasta proprietate97 """98 rezultat = []99 for i in range(len(lista)):100 for j in range(i, len(lista)):101 verificare = verificare_medie_aritmetica(lista[i:j + 1], numar)102 if verificare is True and len(rezultat) < len(lista[i:j + 1]):103 rezultat = lista[i:j + 1]104 return rezultat105def test_prim():106 assert prim(25) is False107 assert prim(19) is True108 assert prim(10) is False109def test_verificare_elemente_neprime():110 assert verificare_elemente_neprime([1, 2, 3]) is False111 assert verificare_elemente_neprime([4, 6, 8]) is True112 assert verificare_elemente_neprime([2, 4, 6, 8]) is False113def test_get_longest_all_not_prime():114 assert get_longest_all_not_prime([4, 6, 8, 2, 5]) == [4, 6, 8]115 assert get_longest_all_not_prime([2, 3, 5, 7]) == []116 assert get_longest_all_not_prime([4, 6, 8, 10]) == [4, 6, 8, 10]117def test_medie():118 assert medie([1, 2, 3]) == 2119 assert medie([2, 4]) == 3120 assert medie([1, 2]) == 1.5121def test_verificare_medie_aritmetica():122 assert verificare_medie_aritmetica([1, 4, 5], 10) is True123 assert verificare_medie_aritmetica([1, 2, 3], 10) is True124 assert verificare_medie_aritmetica([17, 19, 10], 10) is False125def test_get_longest_average_below():126 assert get_longest_average_below([1, 2, 3, 4, 5], 10) == [1, 2, 3, 4, 5]127 assert get_longest_average_below([10, 19, 17], 30) == [10, 19, 17]128 assert get_longest_average_below([20, 30, 50], 100) == [20, 30, 50]129def test_verificare_elemente_prime():130 assert verificare_elemente_prime([1, 2, 3]) is False131 assert verificare_elemente_prime([4, 6, 8]) is False132 assert verificare_elemente_prime([2, 4, 6, 8]) is False133def test_get_longest_all_prime():134 assert get_longest_all_prime([4, 6, 8, 2, 5]) == [2, 5]135 assert get_longest_all_prime([2, 3, 5, 7]) == [2, 3, 5, 7]136 assert get_longest_all_prime([4, 6, 8, 10]) == []137def meniu():138 print("1. Citire date")139 print("2. Toate numerele sunt neprime.")140 print("3. Media numerelor nu depÄÈeÈte o valoare cititÄ.")141 print("4. Toate numerele sunt prime.")142 print("5. Iesire")143 merge = True144 lista_de_numere = []145 while merge is True:146 optiune = int(input("Dati o valoare de la 1 la 4: "))147 if optiune == 1:148 lista_de_numere = []149 citire_lista(lista_de_numere)150 elif optiune == 2:151 rezultat = get_longest_all_not_prime(lista_de_numere)152 print(rezultat)153 elif optiune == 3:154 k = int(input("Dati numarul: "))155 rezultat = get_longest_average_below(lista_de_numere, k)156 print(rezultat)157 elif optiune == 4:158 rezultat = get_longest_all_prime(lista_de_numere)159 print(rezultat)160 elif optiune == 5:161 merge = False162 else:163 print("Valoare gresita! Incercati din nou!")164def main():165 test_prim()166 test_verificare_elemente_neprime()167 test_get_longest_all_not_prime()168 test_medie()169 test_verificare_medie_aritmetica()170 test_get_longest_average_below()171 test_verificare_elemente_prime()172 test_get_longest_all_prime()173 meniu()174if __name__ == '__main__':...
testare.py
Source:testare.py
1from verificare_vector import verificare_vector2from unittest import TestCase3import numpy as np4class Teste(TestCase):5 def testareClaseEchivalenta(self):6 v = [1, 2, 3, 4, 5]7 self.assertTrue(verificare_vector(5,v,4))8 self.assertFalse(verificare_vector(5,v,3))9 self.assertFalse(verificare_vector(5,v,-1))10 self.assertFalse(verificare_vector(5,v,5))11 v = [1, -1, 2, 3, 4]12 self.assertFalse(verificare_vector(5,v,1))13 self.assertFalse(verificare_vector(0,None,None))14 self.assertFalse(verificare_vector(51,None,None))15 def testareValFrontiera(self):16 self.assertFalse(verificare_vector(0,None,0))17 self.assertFalse(verificare_vector(0,None,49))18 self.assertTrue(verificare_vector(1,[1],0))19 self.assertFalse(verificare_vector(1,[1],49))20 v = np.ones(50) + 221 self.assertTrue(verificare_vector(50,v,0))22 self.assertFalse(verificare_vector(50,v,49))23 v = np.ones(51) + 224 self.assertFalse(verificare_vector(51,v,0))25 self.assertFalse(verificare_vector(51,v,49))26 def testareCategorii(self):27 self.assertFalse(verificare_vector(-1,[],0))28 self.assertFalse(verificare_vector(0,[],0))29 self.assertFalse(verificare_vector(1,[2],-1))30 self.assertTrue(verificare_vector(1,[2],0))31 self.assertFalse(verificare_vector(1,[2],2))32 self.assertFalse(verificare_vector(1,[-1],1))33 self.assertFalse(verificare_vector(2,[1,2],-1))34 self.assertTrue(verificare_vector(2,[2,2],0))35 self.assertFalse(verificare_vector(2,[2,2],3))36 self.assertFalse(verificare_vector(2,[-1,1],1))37 v = np.ones(50) + 138 self.assertFalse(verificare_vector(50,v,-1))39 self.assertTrue(verificare_vector(50,v,0))40 self.assertFalse(verificare_vector(50,v,51))41 v = -v42 self.assertFalse(verificare_vector(50,v,0))43 self.assertFalse(verificare_vector(51,[],49))44 def statementCoverage(self):45 self.assertFalse(verificare_vector(0,[],0))46 self.assertFalse(verificare_vector(1,[-4],0))47 self.assertTrue(verificare_vector(1,[2],0))48 def branchCoverage(self):49 self.assertFalse(verificare_vector(0,[],0))50 self.assertFalse(verificare_vector(1,[],-1))51 self.assertFalse(verificare_vector(1,[1],-1))52 self.assertTrue(verificare_vector(1,[1],0))53 self.assertFalse(verificare_vector(1,[1],1))54 self.assertFalse(verificare_vector(2,[1],0))55 def conditionCoverage(self):56 self.assertFalse(verificare_vector(0,[],0))57 v = np.ones(51)58 self.assertFalse(verificare_vector(51,[],0))59 self.assertFalse(verificare_vector(1,[5],-1))60 self.assertFalse(verificare_vector(1,[5],1))61 self.assertFalse(verificare_vector(2,[5],0))62 self.assertFalse(verificare_vector(1,[-1],0))63 self.assertTrue(verificare_vector(1,[1],0))64 def caiTestare(self):65 self.assertFalse(verificare_vector(0,[],0))66 self.assertFalse(verificare_vector(1,[-1],0))67 self.assertTrue(verificare_vector(1,[2],0))68 69#test = Teste()70#test.testareClaseEchivalenta()71#test.testareValFrontiera()72#test.testareCategorii()73#test.statementCoverage()74#test.branchCoverage()75#test.conditionCoverage()...
Learn to execute automation testing from scratch with LambdaTest Learning Hub. Right from setting up the prerequisites to run your first automation test, to following best practices and diving deeper into advanced test scenarios. LambdaTest Learning Hubs compile a list of step-by-step guides to help you be proficient with different test automation frameworks i.e. Selenium, Cypress, TestNG etc.
You could also refer to video tutorials over LambdaTest YouTube channel to get step by step demonstration from industry experts.
Get 100 minutes of automation test minutes FREE!!