Request s přihlášením
Abychom mohli získat data, která vyžadují přihlášení, je nutné se autentifikovat.
WS Cookie
Po příhlašení do WS získáme cookie, která je uložena v prohlížeči. Tuto cookie můžeme použít k autentifikaci v našem kódu.
Po stisknutí F12 se nám otevřou Developer Tools.
Kód pro request s přihlášením vypadá následovně:
import requests
import pandas as pd
from io import StringIO
url = "https://ws.ujep.cz/ws/services/rest2/kvalifikacniprace/getKvalifikacniPraceAuth"
ticket = "your_ticket"
params = {
"katedra": "KI",
"outputFormat": "CSV",
"outputFormatEncoding": "utf-8"
}
data = requests.get(url, params=params, cookies={"WSCOOKIE": ticket})
df = pd.read_csv(StringIO(data.text), sep=";")
library(httr)
library(readr)
url <- "https://ws.ujep.cz/ws/services/rest2/kvalifikacniprace/getKvalifikacniPraceAuth"
ticket <- "your_ticket"
params <- list(
"katedra" = "KI",
"outputFormat" = "CSV",
"outputFormatEncoding" = "utf-8"
)
data <- GET(
url,
query = params,
add_headers("Cookie" = paste("WSCOOKIE", ticket, sep = "="))
)
df <- read_csv2(rawToChar(data$content))
Přihlašovací údaje
import pandas as pd
import requests
import os
from io import StringIO
from dotenv import load_dotenv
load_dotenv()
user = os.getenv("STAG_USER")
password = os.getenv("STAG_PASSWORD")
url = "https://ws.ujep.cz/ws/services/rest2/kvalifikacniprace/getKvalifikacniPraceAuth"
params = {
"katedra": "KI",
"outputFormat": "CSV",
"outputFormatEncoding": "utf-8"
}
auth = (user, password)
data = requests.get(url, params=params, auth=auth)
df = pd.read_csv(StringIO(data.text), sep=";")
library(httr)
library(readr)
user <- Sys.getenv("STAG_USER")
password <- Sys.getenv("STAG_PASSWORD")
url <- "https://ws.ujep.cz/ws/services/rest2/kvalifikacniprace/getKvalifikacniPraceAuth"
params <- list(
"katedra" = "KI",
"outputFormat" = "CSV",
"outputFormatEncoding" = "utf-8"
)
data <- GET(
url,
query = params,
authenticate(user, password),
encode = "UTF-8"
)
df <- read_csv2(rawToChar(data$content))