Lehetséges az alábbi Python program megírása, illetve hogyan?
Egy olyan programot szeretnék Pythonban megírni, ami belép a Neptun fiókomba és amint lehetséges a tárgyfelvétel, azonnal felveszi az összes órát az órarendtervezőből. Ha valaki ehhez ért, vagy van némi elképzelése arról, hogy hogyan lehetne megoldani, írjon!
Python 3.8.1
Természetesen lehetséges, habár szigorúan tilos minden ilyen jellegű program használata.
Hány éve programozol? Mivel és mennyi tapasztalatod van?
Ezt honnan veszitek, hogy tilos?
Nyilván szándékosan leterhelni a renszert az más kérdés, de ő csak automatizálni szeretne valamit.
(Persze ha hiba csúszik bele és emiatt lehal a Neptun, akkor más kérdés, szóval teljesen kezdőknek nem ajánlott, hogy ilyet csináljanak.)
Amikor én voltam egyetemista, csak a belépés volt kritikus. (Nálunk teljesítménybeli problémák voltak annak idején. Lehet ilyen már nincs, azért csak sikerült egy erősebb vasat beszerezni 15 év alatt:)) Ha sikerült a bejelentkezés utána már ment a tárgyfelvétel. Szóval nekem csak arra volt scriptem. Semmi gond nem volt vele.
Hello, néhány dolog előtte:
1) Neptun felhasználói feltételei néhány dolgot tiltanak, ha azokat nem sérti a programod, akkor jogilag nincs baj.
2) Mielőtt bármibe belekezdenél ajánlom a Neptun Power Up github oldalát.
3) Ha nem programoztál még és nincs tapasztalatod, nagyobb esély van rá, hogy fel adod vagy rosszabb valami kárt okozol.
--------------------------------------------------------------------------------------------------------
Szóval szükséges ismeretek: javascript, hálózati tudások, ajax tudás, html, valamilyen script nyelv (jelenleg a python 3.5+)
2 féle megoldást tudok ajánlani:
1) Python selenium: ezzel lehet automatizálni a böngésződet. Pontosan ugyanazt csinálja mint te (beírja a jelszavadat, megnyomja a gombot, stb..). Meg tudod adni html xpath segítségével, mit nyomjon meg, mit írjon hova, a logika és a hiba kezelés teljesen tőled függ. Na most viszont ezzel az a baj, hogy Neptun egy szutyok, egy tervezési káosz! Ha ezt a megoldást választod biztosan találkozol sok hibával (pl: jelenlegi lapon nem találja a megadott xpath-ot).
-----------------------------------
2) Fejtsd vissza az oldalt egy kicsit ( persze a programok visszafejtése illegális általában szóval ezt a kifejezést továbbiakban nem használom). Tudd meg hogy mit, mikor, hova, milyen feltételekkel küld. Példa: bejelentkezéskor a jelszavat és a felhasználó nevet POST-olja a /login route-ra (csak példa, nem tudom hogy tényleg így van -e). Erre a böngésző networking füle a segítségedre lesz, onnan tudod majd leolvasni használat közben, hogy mik töténtek. Ha már megismerted és tudod, hogy mit csinál, python a Requests nevű könyvtárat melegen ajánlom. Ezzel tudsz küldeni HTTP Request-eket. (Ha könyebb dologgal szeretnél testtelni akkor ajánlom a Postman-t). Végül már csak össze kell tenned: bejelentkezés -> ha sikerült akkor hova navigáljon (illetve ha kell őrizd meg amit visszaküld vagy a csrf token-t) -> a navigált oldalon mit csináljon / mit triggereljen, külömböző válaszokat / hibákat hogy kezeljen.
Remélem tudtam segíteni, személyes véleményem szerint (meg előző válaszod alapján) gyakorj még egy évet mielőtt neki kezdesz.
"Ezt honnan veszitek, hogy tilos?"
Én onnan veszem, hogy nekünk szóban el is mondták, hogy semmilyen szoftveres manipulálás nem megengedett a Neptunban és súlyos büntetésekre lehet számítani, ha valaki megteszi.
Kapcsolódó kérdések:
Minden jog fenntartva © 2024, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!