Package: debis
Debis ModuleDokuz Eylül Üniversitesi'ninDEBİSsitesinden öğrenci ve ders bilgileri çekmek amacıyla hazırlanmış bir modül.Installationpip install debisDemouser.pydosyasını açın ve debis kullanıcı adı ve şifrenizi bu dosya içinde domain uzantısı kullanmadan belirtin.örnekuser.pykullanımı:username = 'ridvan.altun'
password = 'benimgüzelsifrem'demo.pydosyasını açıp33. satırı kendinize uydurun.Son olarak demo'yu çalıştırın.python demo.pyÖrnek çıktı:UsageKütüphaneyi Projeye Eklemek:fromdebisimportperson# logic..Ön Ayarlar:Kütüphaneyi kullanmaya başlamadan önce yapabileceğimiz ön ayarlar.Request Hatalarını KapatBu kütüphaneyi ilk defa kullanacak kullanıcılar için bu kısmın kullanılması tavsiye edilmez, oluşan hataları görmek için bu kısmı atlamanız tavsiye edilir.# request (istek) esnasında oluşan hataları bildir, default: TrueStudent.show_timer_errors=FalseÖğrenci Nesnesi Oluşturmak:İki farklı şekilde öğrenci nesnesi oluşturmak mümkün:başlayıp kısa sürede biten işlemler için (normal bir şekilde)uzun süren işlemler içinUzun süren işlemler için ayrı bir yöntem geliştirilmesinin nedeni Debis sitesinin belirli bir süre kadar işlem yapmayınca 'connection timeout' ile otomatik olarak oturumu sonlandırmasıdır ki bu yöntem sadece nadir senaryolarda kullanılıyor, kafanız karışmasın.Normal Bir Şekilde Öğrenci Nesnesi Oluşturmaktry:ogrenci1=person.Student('username','password')### more codes..except:print('Hata.')Uzun Süren (~10dk) İşlemler İçin Öğrenci Nesnesi Oluşturmaktry:# timer çalışma esnasında oluşan hataları gösterme, default: Trueperson.Student.show_request_errors=Falseogrenci1=person.Student('username','password',alive=True)# connection timeout olmasın diye bir thread baslatiliyorogrenci1.timer.start()### more codes..except:print('Hata.')finally:ogrenci1.timer.stop()Öğrenci Hakkında Bilgi Edinmek:print('\n#### OGRENCININ BUGUNE KADAR ALDIGI DONEMLER\n')# öğrenciye ait dönemlerin adları bir liste içinde yazdırılıyorprint(ogrenci1.all_period_name)print('\n#### OGRENCININ BUGUNE KADAR ALDIGI DERSLER\n')# öğrenciye ait derslerin adları matris şeklinde yazdırılıyorprint(ogrenci1.all_lesson_name)# for each kullanarak daha güzel bir sekilde goruntulemek mumkunforxinogrenci1.all_lesson_name:print(x)print('\n#### DERS KODLARI\n')# öğrenciye ait derslerin kodları matris şeklinde yazdırılıyorprint(ogrenci1.all_lesson_code)# for each kullanarak daha güzel bir sekilde goruntulemek mumkunforxinogrenci1.all_lesson_code:print(x)print('\n#### OGRENCI BILGILERI\n')# tüm ögrenci bilgilerini topluca yazdırıyoruzforxinogrenci1:print(x)# ogrenci hakkındaki bilgilere tek tek erisebiliyoruzprint(ogrenci1.name)print(ogrenci1.no)print(ogrenci1.grade)print(ogrenci1.fakulty)print(ogrenci1.department)print(ogrenci1.grading)Ders Nesnesi Oluşturmak:Ders oluşturmanın birçok yöntemi vardır.# dönem adı ve ders adı vererek ders nesnesi oluşturabilirizders1=ogrenci1.get_lesson('2017-2018-Güz',lesson_name='Türk Dili I')# ders adı yerine ders kodu belirtebilirizders1=ogrenci1.get_lesson('2017-2018-Güz',lesson_code='TDL-1001')# ders adı girerken buyuk kucuk harf uyumu gözetilmezders1=ogrenci1.get_lesson('2018-2019-Güz',lesson_name='GÖRSEL PROGRAMLAMA 2')# ders adını tam girmek zorunda değilizders1=ogrenci1.get_lesson('2018-2019-Güz',lesson_name='görsel')# ders nesnesini oluştururken dönem adı belirtmedik, default olarak son dönem alındıders1=ogrenci1.get_lesson(lesson_name='görsel')# ders nesnesini sadece öğrenci nesnesinin içinde oluşturdukogrenci1.get_lesson(lesson_name='görsel')Ders Hakkında Bilgi Edinmek:print('\n#### DERS NESNE LISTESI\n')# ogrenci nesnesi üstünden ders nesnelerini liste şeklinde yazdırabiliyoruzprint(ogrenci1.lessons)# ogrenci icindeki ders nesnesinden veri cektikprint(ogrenci1.lessons[0].credit)# olusturulan nesne ile ogrenciye ait nesnenin bir link oldugunun gösterimiprint(id(ogrenci1.lessons[0]))print(id(ders1))print('\n#### DERS BILGILERI\n')# ders hakkında bilgileri toplu bir sekilde yazdiriyoruzforxinders1:print(x)# ders hakkındaki bilgilere tek tek erisebiliyoruzprint(ders1.code)print(ders1.name)print(ders1.fakulty)print(ders1.department)print(ders1.branch)print(ders1.credit)print(ders1.attendance_required)print(ders1.repeat_count)print(ders1.attendance_status)print(ders1.teaching_assistant)print(ders1.teaching_assistant_email)print(ders1.status)print('\n#### DERS NOT BILGISI\n')# ilgili dersin notlarına topluca erisiyoruzprint(ders1.notes)# vize notuna ulasıyoruzprint(ders1.notes['vize_not'])ContributingIf you find any problem while using this library create anissue. 😋LicenseThis project is licensed under theMIT License.