Kaip sukūriau „Python Bot“, kad automatiškai prisijungčiau prie nelaisvės portalo

Žingsnis po žingsnio „Python“ pamoka sukurti prisijungimo robotą

Šiais laikais internetas nėra privilegija, tai yra būtinybė. Kad ir kur eitume, mums reikia nuolatinio ryšio su internetu, naudojant „Wi-Fi“ arba mobiliojo duomenų tinklą.

Įsivaizduokite, kad prisijungiame prie naujo universiteto ar organizacijos, kuri teikia mums internetą per „Wi-Fi“. Organizacija gali įdiegti labai įprastą savo vartotojų tapatybės patvirtinimo prisijungimo puslapį, vadinamą nelaisvės portalu (dar vadinamu „ Walled Garden“ ).

Nelaisvės portalas naudojamas dėl daugelio priežasčių.

  • Juos naudoja universitetai ir organizacijos, norėdami apriboti įrenginių, prijungtų prie „Wi-Fi“ tinklo, skaičių iš vienos paskyros / asmens.
  • Jie įgyvendinami siekiant suteikti prieigą prie paslaugų, kurioms reikalingas autentifikavimas, mokėjimas ar kiti galiojantys įgaliojimai, kurių sutinka laikytis tiek paslaugų teikėjas, tiek vartotojas.

Yra daugybė priežasčių ir pranašumų, jei norite naudoti uždarą portalą, tačiau apie šį įrašą kalbama ne apie tai.

Mano įmonė įdiegė uždarą portalą, prie kurio vartotojai turėjo prisijungti, kad galėtų prisijungti prie interneto. Iškart, kai prisijungiau prie belaidžio tinklo, mano naršyklė atidarė uždarojo portalo puslapį, o aš turėjau įvesti savo vartotojo vardą ir slaptažodį, po kurio galėjau prisijungti prie interneto. Tačiau kilo problema.

Nors „Captive“ portalo įdiegimas yra naudingas apsaugai nuo neteisėtos prieigos prie interneto, srauto identifikavimui ir vartotojų valdymui, jis turi kontroliuojamą ryšį su kiekvienu įrenginiu, kad visi vartotojai turėtų tinkamą prieigą. Uždaras portalas gali,

  • Valdykite terminalų skaičių vienam vartotojui
  • Kontroliuokite pralaidumo suvartojimą ir (arba) vienos sesijos atsisiuntimo greitį
  • Apribokite leidžiamo srauto tipą ir netgi nurodykite seanso skirtojo laiko trukmę

Dėl šių apribojimų, jei aš užmigdau savo sistemą arba buvau nenaudojamas ilgiau nei kelias minutes, mano sistema buvo atjungta iš tinklo. Todėl, praleidęs prastovos laiką, turėjau prisijungti iš naujo.

Būdamas programinės įrangos kūrėjas, kuriam reikalingas nuolatinis internetinis prisijungimas prie sistemos, turėjau vėl ir vėl įvesti savo vartotojo vardą ir slaptažodį, todėl tai tapo labai sudėtinga.

Ką daryti, jei po atsijungimo galėčiau prisijungti prie uždarojo portalo spustelėdamas tik mygtuką / piktogramą savo sistemoje?

Tai turėtų būti įmanoma! Nereikia įvesti vartotojo vardo ir slaptažodžio, kuris dažniausiai turėtų būti 8 simbolių ilgio ir turėti bent vieną didelę raidę bla bla bla. Pažiūrėkime, kaip mes galime tai padaryti.

Įgyvendinimas

Net jei esate naujokas programavimo srityje, tai turėtų būti gana lengva. Aš tai užkodavau „Python“ programavimo kalba. „Python“ galima atsisiųsti čia, taip pat reikalingas „Selenium“, kurį galima atsisiųsti čia. Taip pat galite pip install selenium(rekomenduojama).

Dabar pažvelkime į kodą.

Importavę reikalingas bibliotekas, kode turime nurodyti šiuos kintamuosius.

Leiskite man tai paaiškinti dabar,

  • svetainės nuoroda yra ne kas kita, kaip prisijungimo puslapio nuoroda arba užfiksuoto portalo nuoroda, pagal kurią vartotojas tapatins
  • U sername ir slaptažodis yra tai, ką įvesite į prisijungimą
  • element_for_username, element_for_password, element_for_submit yra elemento pavadinimai prisijungimo puslapio HTML kode.

Leiskite man parodyti, kaip juos rasti.

Kaip ir paveikslėlyje aukščiau,

  • Atidarykite „ Tikrinti elementą“, atsižvelgiant į jūsų naršyklę.
  • Ieškokite HTML elemento ir nukopijuokite įvesties žymos pavadinimą (aukščiau pateiktame pavyzdyje jo vartotojo vardas ).
  • Atlikite tą patį veiksmą, kad sužinotumėte slaptažodžio ir pateikimo mygtuko HTML elementą .
  • Šios eilutės bus jūsų element_for_username, element_for_password, element_for_submit vertė.

Didžioji dalis darbo atlikta!

Pastaba: Aš dirbu su „MacOS“, todėl įdiegsiu „Safari“ robotą. Jei naudojate „Chrome“ ir kitus, naudokite „Chrome“ per „chromedriver“.

Nukopijuokite šį kodą su likusiu kodu ir išsaugokite jį kaip „Python“ (.py failą). Paleiskite failą naudodami python script.py. Pamatysite, kad naršyklė automatiškai atidaro prisijungimo puslapį, įveda išsamią informaciją ir pateikia ją. Nebereikia net įvesti vartotojo vardo ir slaptažodžio. Ar ne šaunu?

Pastaba: visą kodą galima rasti „GitHub“.

„Automator“ naudojimas „MacOS“ programai kurti (pasirinktinai)

„MacOS“ galite sukurti programą, kuri galėtų vykdyti tam tikrą užduočių, kurios atliekamos pakartotinai, darbo eigą.

Šiame skyriuje paaiškinsiu, kaip aukščiau pateiktą „Python“ scenarijų paversti automatikos programa. Tai leis vartotojui prisijungti prie laikinojo portalo ir tiesiog spustelėkite automato programos failą.

Dabar pažiūrėkime, kaip tai įgyvendinti:

1 veiksmas: atidarykite „ Automator“ . Sukurkite naują paslaugą arba „ File“ & g t; Nauja > S ervice

2 žingsnis: Pridėti " Vykdyti apvalkalo scenarijus " veiksmų, nustatant apvalkalas: į / bin / bash ir Pass įvesties: iki pat argumentais .

3 žingsnis: Dabar pridėkite bash kodą, kaip nurodyta toliau. Išsaugokite failą darbalaukyje.

4 žingsnis: Spustelėkite failą ir „Voilà“!

Lengvai galima surasti tokį paprastą problemos sprendimą kaip pakartotinai įvesti tokius duomenis kaip prisijungimo duomenys. Kai žinosite, kas yra problema, lengviau rasti sprendimą. Tikiuosi, kad šis įrašas suteikė idėją, kaip veikia „Selenium“ ir „Python“ ir kaip lengva sukurti „Python“ robotą.