Du må være registrert og logget inn for å kunne legge ut innlegg på freak.no
X
LOGG INN
... eller du kan registrere deg nå
Dette nettstedet er avhengig av annonseinntekter for å holde driften og videre utvikling igang. Vi liker ikke reklame heller, men alternativene er ikke mange. Vær snill å vurder å slå av annonseblokkering, eller å abonnere på en reklamefri utgave av nettstedet.
  4 4891
Altså, jeg vet ikke helt hvordan jeg skal formulere meg da jeg ikke har mye erfaring innen programmering.
Jeg prøver å få til et skript som kan hente ut alt jeg har på itslearning.
Det eneste jeg trenger er å få skriptet til å trykke på knappen hvor det står "Logg på med Feide" på denne siden. Ikke noe annet.
Brukernavn og passord har jeg fått skrevet inn, det eneste problemet mitt er å få trykt på knappen. Kan noen hjelpe meg med det? Det må være i Python 3.
Jeg har funnet et skript for NTNU som jeg har tatt utgangspunkt i, men må modifisere for at den skal fungere på HiST.
Sist endret av nikkibever; 11. mai 2017 kl. 23:16.
Hvorfor Python? Jeg kan forstå at mange benytter seg av Python hyppig til slike oppgaver, men da benytter dem gjerne biblioteker som urllib eller request til å forta HTTP spørringer. I de tilfellene så kjøres det som oftest i terminalen, noen velger å lage grafisk brukergrensesnitt, men aldri i nettleseren slik du ser for deg det.

Hvis du ønsker å laste ned Itslearning siden og kjøre koden på den, så foreslår jeg du glemmer Python og benytter deg av ren Javascript.
I see you...
NAPse's Avatar
Scriptet TS tar utgangspunkt i bruker requests, og kjøres fra terminal. Jeg ville gått igjennom koden med en god del skepsis mtp. hva som skjedde når jeg lasta ned itsdownloading.exe.


Hvis du ikke er avhengig av at ALT skal kunne gjøres med kommandoer ville jeg heller sett på å fjerne innloggingsdelen av NTNU- scriptet ditt, og heller eksportert cookies fra en allerede innlogga nettleser. Som feks. med cookies.txt deretter brukt denne cookien i scriptet ditt.
Jeg bruker LastPass, og kommer automatisk inn på itslearning såfremt jeg skriver inn URL. Den fyller ut brukernavn og passord og trykker på knappen for meg.
"Logg på med Feide" på denne siden. Ikke noe annet.
Vis hele sitatet...
Du kan ikke bruke koden du har funnet,da logg inn er helt forskjellig.
Itslearning bruker JavaScript for log in.
For dette er Selenium/PhantomJS grei og bruke fra Python.
F.eks:

Kode

from selenium import webdriver
from selenium.webdriver.common.keys import Keys
import time

browser = webdriver.Chrome()
web_url = 'https://hist.itslearning.com/index.aspx'
browser.get(web_url)
time.sleep(3)
username = browser.find_element_by_id("ctl00_ContentPlaceHolder1_Username_input")
password = browser.find_element_by_id("ctl00_ContentPlaceHolder1_Password_input")
username.send_keys("user_name")
password.send_keys("pass_word")
time.sleep(3)
browser.find_element_by_id('ctl00_ContentPlaceHolder1_nativeLoginButton').click()
Koden prøver og logge meg inn.
Når alt virker kan man også kalle PhantomJS(for og ikke laste nettleser).

Kode

browser = webdriver.PhantomJS()
Videre taktikk jeg bruker en del er og sende kildekoden fra Selenium/PhantomJS(browser.page_source),
til Beautiful Soup / lxml og parse med dem og eventuelt download med Requests.
Sist endret av snippsat; 12. mai 2017 kl. 16:46.