AKADEMIK BILIŞIM VE PYTHON

LeGoLaS

ikra
Emektar Yönetici
Profil Bilgileri
Üyelik Tarihi :
1 Ağu 2008
Bulunduğu Yer :
Türkiye
Mesajları :
9,905
Puanları :
4,060
AKADEMIK BILIŞIM VE PYTHON


1-4 Şubat tarihleri arasında akademik bilişim yapılacak. EkiptenMehmet 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.

[COLOR=white !important]?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49​
# -*- 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'<table><tbody><tr><td>'+h+u'</td><td>'+ str(sozluk[h]) +u'</td></tr><tr><td>BELİRTİLMEMİŞ</td><td>'+ str(bos) +u'</td></tr></tbody></table>
'

html_liste.write(html.encode("utf-8"))



[/COLOR]
İ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.

[COLOR=white !important]?
1​
apt-get install python-bs4​

[/COLOR]
Daha fazla bilgiye buradan ulaşabilirsiniz. İlk önce http://ab2014.mersin.edu.tr/kursBasvuruDetay.php?id=4adresine 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 SAYISIERCİYES ÜNİVERSİTESİ4POLİS AKADEMİSİ1ÖZYEĞİN UNİVERSİTY1MUGLA SİTKİ KOCMAN UNİVERSİTESİ1BİLKENT ÜNİVERSİTESİ19FIRAT ÜNİVERSİTESİ6LKD1ATM DALAMAN HAVALİMANI YAPIM VE İŞLETME A.Ş1EFİCA1BAHÇEŞEHİR ÜNİVERSİTESİ2YILDIRIM BEYAZIT ÜNİVERSİTESİ1AHMET YESEVİ UNİVERSİTESİ1KASTAMONU ÜNİVERSİTESİ1MEVLANA ÜNİVERSİTESİ2EGM3ONDOKUZ MAYIS ÜNİVERSİTESİ BİLGİ İŞLEM DAİRE BAŞKANLIĞI1ESKİŞEHİR OSMANGAZİ ÜNİVERSİTESİ1ISPARTA ATABEY MESLEK YÜKSEK OKULU8EASTERN MEDITERRIAN UNIVERSITY1EGE UNIVERSITESI1MERSİN ÜNİVERSİTESİ1MANDALİN BİLİŞİM HİZMETLERİ1ÜNİVERSİTE1GAZİ ÜNİVERSİTESİ3ÇÖZÜM GÜMRÜKLEME1KARAMANOĞLU MEHMETBEY ÜNİVERSİTESİ1GAZİANTEP ÜNİVERSİTESİ BİLGİ İŞLEM DAİRE BAŞKANLIĞI1ÇANAKKALE ONSEKİZ MART ÜNİVERSİTESİ3NECMETTİN ERBAKAN ÜNİVERSİTESİ3İSTANBUL AYDIN ÜNİVERSİTESİ2TRAKYA ÜNİVERSİTESİ1SAKARYA ÜNİVERSİTESİ2EPATİ BİLİŞİM2YILDIZ TEKNİK ÜNİVERSİTESİ2ANTALYA INTERNATIONAL UNİVERSITY1ULUDAĞ ÜNİVERSİTESİ1ZİRVE ÜNİVERSİTESİ1ORTA DOĞU TEKNİK ÜNİVERSİTESİ1T.C. ADIYAMAN ÜNİVERSİTESİ1ERDEMLİ ATL, TL VE METEM1ARTVİN ÇORUH ÜNİVERSİTESİ1SELÇUK ÜNİVERSİTESİ1TÜRKİYE BİLİŞİM DERNEĞİ3ABANT İZZET BAYSAL ÜNİVERSİTESİ1SAÜ1İZMİR YÜKSEK TEKNOLOJİ ENSTİTÜSÜ1MEHMET AKİF ERSOY ÜNİVERSİTESİ2BAHCESEHİR UNİVERSİTESİ1ANKARA ÜNİVERSİTESİ11ÖĞRENCİ1PROJE KUTUSU ELEKTRONİK1KAHRAMANMARAŞ SÜTÇÜ İMAM ÜNİVERSİTESİ1KARABÜK ÜNİVERSİTESİ3DUMLUPINAR ÜNİVERSİTESİ BİLGİSAYAR MÜHENDİSLİĞİ BÖLÜMÜ2TOROS UNİVERSİTESİ1ÇUKUROVA ÜNİVERSİTESİ ENFORMATİK BÖLÜMÜ8MUSTAFA KEMAL ÜNİVERSİTESİ2BEYKENT ÜNİVERSİTESİ1DOKUZ EYLÜL ÜNİVERSİTESİ1MEB1SDÜ MYO. BİLGİ GÜVENLİĞİ TEKNOLOJİLERİ118 MART ÜNİVERSİTE1SÜLEYMAN DEMİREL ÜNİVERSİTESİ14ATABEY MESLEK YÜKSEK OKULU4MOBİLİZ BİLGİ VE İLETİŞİM HİZMETLERİ A.Ş1OSMANGAZİ ÜNİVERSİTESİ13.ANA JET US K.LIĞI1INTELRAD1MUĞLA SITKI KOÇMAN ÜNİVERSİTESİ2DOĞU AKDENİZ ÜNİVERSİTESİ1KONYA NECMETTİN ERBAKA ÜNİVERSİTESİ3DENIZ KUVVETLERİ K.LİGİ1YEDİTEPE ÜNİVERSİTESİ1KARADENİZ TEKNİK ÜNİVERSİTESİ5BELİRTİLMEMİŞ41Burada bazı verilerin tutarsız olması kişilerin kurum alanını yazarken herhangi bir standarda uymamasından kaynaklanıyor.
 
Üst