31 Aralık 2013 Salı

Akademik Bilişim ve Python

1-4 Şubat tarihleri arasında akademik bilişim yapılacak. Ekipten Mehmet Dursun İnce ve Barkın Kılıç Güvenlik 101 Eğitimi verecekler. Kayıtlar bitti ve şuanda 209 insan sadece Güvenlik 101 eğitimi için kayıt yaptırdı. İlk başta 50 kişiye verilmesi planlanan eğitim yoğun ilgi üzerine 100 kişiye çıkartıldı. Bu 100 kişi 209 kişi arasından yapılacak olan bir sınav ile seçilecek. Seçilme işleminin adaletli olabilmesi için her üniversiteden veya başvurulan kurumdan eşit bir şekilde seçilmesi şeklinde planlandığını tahmin ediyoruz. Biz de tabi ki eğitime başvurduk. Şunu söyleyelim ki aynı ekipte olmamız bize direk gitme şansı vermiyor. Biz de herkes gibi sınava girecek ve gitmek için yarışacağız. Yani eğitimi verecek kişiler adalete önem veriyor diyebiliriz. Bizde düşündük ve madem her kurumdan eşit sayıda insan seçilmesi muhtemel bir durum. Bir bakalım hangi kurumlardan kaçar kişi başvurmuş öğrenelim dedik. Tabi ki bu yazının Python ile ilişkisi tam da burada devreye giriyor. Bunu öğrenebilmek için küçük bir Python betiği yazdık.
# -*- coding:utf-8 -*-
from bs4 import BeautifulSoup
import urllib
from collections import Counter

html = urllib.urlopen("http://ab2014.mersin.edu.tr/kursBasvuruDetay.php?id=4").read()

html_icerik = BeautifulSoup(''.join(html))

tablo = html_icerik.find('table')

satirlar = tablo.findAll('tr')

liste = []
bos = 0
sayac=1

for tr in satirlar:
 sutunlar = tr.findAll('td')
 for td in sutunlar:
  if sayac==3:
   metin = td.find(text=True)
   if metin != None:
    liste.append(metin)
   else:
    bos = bos +1
  sayac += 1
 sayac=1

h = dict()
sozluk = Counter([h.setdefault(k,v) for k,v in zip([x.split()[0] for x in liste],liste)])


html_liste = open('akademikbilisim.html','w')

html = u'\n'

for i in h:
 html = html + u'

\n'

html = html + u'

\n'
html = html + u'
'+h[i]+u''+ str(sozluk[h[i]]) +u'
BELİRTİLMEMİŞ'+ str(bos) +u'
' html_liste.write(html.encode("utf-8"))
İlk önce burada kullanmış olduğumuz bs4 modülünden bahsedelim. Bu modül bir Html metnini bölebilmek için geliştirilmiştir. Python ile hazır bir şekilde gelmiyor. İlk önce bu modülü kurmamız gerekiyor. Eğer bir Linux dağıtımı kullanıyorsanız şu şekilde kurabilirsiniz.
apt-get install python-bs4
Daha fazla bilgiye buradan ulaşabilirsiniz. İlk önce http://ab2014.mersin.edu.tr/kursBasvuruDetay.php?id=4 adresine bağlanarak istediğimiz verileri çektik ve bunları bir listeye kaydederek o liste üzerinden işlem yaptık.
Aynı üniversitelerin tekrarlanmaması olayında yardım aldığımızı itiraf edelim.
Son olarak da bunları bir html sayfasına bastırdık. Siz isterseniz doğrudan yazdırabilirsiniz. Ve işte sonuç; Hangi kurumdan kaç kişi Güvenlik 101 eğitimine başvuru yapmış.
KurumKişi Sayısı
ERCİYES ÜNİVERSİTESİ4
POLİS AKADEMİSİ1
ÖZYEĞİN UNİVERSİTY1
MUGLA SİTKİ KOCMAN UNİVERSİTESİ1
BİLKENT ÜNİVERSİTESİ19
FIRAT ÜNİVERSİTESİ6
LKD1
ATM DALAMAN HAVALİMANI YAPIM VE İŞLETME A.Ş1
EFİCA1
BAHÇEŞEHİR ÜNİVERSİTESİ2
YILDIRIM BEYAZIT ÜNİVERSİTESİ1
AHMET YESEVİ UNİVERSİTESİ1
KASTAMONU ÜNİVERSİTESİ1
MEVLANA ÜNİVERSİTESİ2
EGM3
ONDOKUZ MAYIS ÜNİVERSİTESİ BİLGİ İŞLEM DAİRE BAŞKANLIĞI1
ESKİŞEHİR OSMANGAZİ ÜNİVERSİTESİ1
ISPARTA ATABEY MESLEK YÜKSEK OKULU8
EASTERN MEDITERRIAN UNIVERSITY1
EGE UNIVERSITESI1
MERSİN ÜNİVERSİTESİ1
MANDALİN BİLİŞİM HİZMETLERİ1
ÜNİVERSİTE1
GAZİ ÜNİVERSİTESİ3
ÇÖZÜM GÜMRÜKLEME1
KARAMANOĞLU MEHMETBEY ÜNİVERSİTESİ1
GAZİANTEP ÜNİVERSİTESİ BİLGİ İŞLEM DAİRE BAŞKANLIĞI1
ÇANAKKALE ONSEKİZ MART ÜNİVERSİTESİ3
NECMETTİN ERBAKAN ÜNİVERSİTESİ 3
İSTANBUL AYDIN ÜNİVERSİTESİ2
TRAKYA ÜNİVERSİTESİ1
SAKARYA ÜNİVERSİTESİ2
EPATİ BİLİŞİM2
YILDIZ TEKNİK ÜNİVERSİTESİ2
ANTALYA INTERNATIONAL UNİVERSITY1
ULUDAĞ ÜNİVERSİTESİ1
ZİRVE ÜNİVERSİTESİ1
ORTA DOĞU TEKNİK ÜNİVERSİTESİ1
T.C. ADIYAMAN ÜNİVERSİTESİ1
ERDEMLİ ATL, TL VE METEM1
ARTVİN ÇORUH ÜNİVERSİTESİ1
SELÇUK ÜNİVERSİTESİ1
TÜRKİYE BİLİŞİM DERNEĞİ3
ABANT İZZET BAYSAL ÜNİVERSİTESİ1
SAÜ1
İZMİR YÜKSEK TEKNOLOJİ ENSTİTÜSÜ1
MEHMET AKİF ERSOY ÜNİVERSİTESİ2
BAHCESEHİR UNİVERSİTESİ1
ANKARA ÜNİVERSİTESİ11
ÖĞRENCİ1
PROJE KUTUSU ELEKTRONİK1
KAHRAMANMARAŞ SÜTÇÜ İMAM ÜNİVERSİTESİ1
KARABÜK ÜNİVERSİTESİ3
DUMLUPINAR ÜNİVERSİTESİ BİLGİSAYAR MÜHENDİSLİĞİ BÖLÜMÜ2
TOROS UNİVERSİTESİ1
ÇUKUROVA ÜNİVERSİTESİ ENFORMATİK BÖLÜMÜ8
MUSTAFA KEMAL ÜNİVERSİTESİ2
BEYKENT ÜNİVERSİTESİ1
DOKUZ EYLÜL ÜNİVERSİTESİ1
MEB1
SDÜ MYO. BİLGİ GÜVENLİĞİ TEKNOLOJİLERİ1
18 MART ÜNİVERSİTE1
SÜLEYMAN DEMİREL ÜNİVERSİTESİ14
ATABEY MESLEK YÜKSEK OKULU4
MOBİLİZ BİLGİ VE İLETİŞİM HİZMETLERİ A.Ş1
OSMANGAZİ ÜNİVERSİTESİ1
3.ANA JET US K.LIĞI1
INTELRAD1
MUĞLA SITKI KOÇMAN ÜNİVERSİTESİ2
DOĞU AKDENİZ ÜNİVERSİTESİ1
KONYA NECMETTİN ERBAKA ÜNİVERSİTESİ3
DENIZ KUVVETLERİ K.LİGİ1
YEDİTEPE ÜNİVERSİTESİ1
KARADENİZ TEKNİK ÜNİVERSİTESİ5
BELİRTİLMEMİŞ41
Burada bazı verilerin tutarsız olması kişilerin kurum alanını yazarken herhangi bir standarda uymamasından kaynaklanıyor.

0 yorum :

Yorum Gönder