Here's a little skript I wrot to fetch my personal calendar in ICAL format out of CAMPUSonline using CURL:

#!/bin/sh
if [ $# != 3 ]; then
echo "Usage: ${0} <username> <password> <calendar>"
exit
fi
COOKIES=/tmp/$(whoami).cookies
rm -f ${COOKIES}
curl -s -b ${COOKIES} -c ${COOKIES} \
https://online.meduni-graz.at/mug_online/webnav.ini >/dev/null
curl -s -b ${COOKIES} -c ${COOKIES} \
https://online.meduni-graz.at/mug_online/anmeldung.durchfuehren >/dev/null
curl -s -d cp1=${1} -d cp2=${2} -b ${COOKIES} -c ${COOKIES} \
https://online.meduni-graz.at/mug_online/wbAnmeldung.durchfuehren >/dev/null
curl -s -b ${COOKIES} -c ${COOKIES} -d pParTypen=${3} -d pParPtls= \
-d pAction=1 -d pFormat=ical \
"https://online.meduni-graz.at/mug_online/tvkalender.export"
rm -f ${COOKIES}

The first and the second argument are username and password. The third has to be extracted from the HTML source of the export page in CAMPUSonline. Look for an input element with name="pParTypen". The value (an eight digit string) of this element is the third argument.