Vip üye
    
Üyelik Tarihi: 24-01-2017
Yorum Sayısı: 690
Konu Sayısı: 23
Rep Puanı:
11
gecemor hocam haklısınız, zaten temel videoları felan izlemeye başladım bide pycharm indirdim öğrencilere 1 yıl bedavaymış, umarım faydalı olur.
Bide hocam sizin verdiğiniz kod da td tagıyla arama yapınca birkaç gereksiz şeylerde geliyordu, ama yukarıda yaptığım kodda sayfadan istediklerimin hepsini çekiyor, nasıl yaptım bilmiyorum ama oldu  bide sizin şu playlist ile faceye video yükleme scriptinden aldığım virgül ile link,başlık,açıklama kısmını ayırma yönteminden ilham alarak bende username ve pass ayırmak için kullandım.
Tek sıkıntım şimdi sayfadan gelen verilerin aralarına işaret koyup ona göre indexlemek ve kullanıcıya gönderilen mesajı daha düzgün hale getrmek. Onunla uğraşıyorum
senin konu başında "td" tagleriyle olan kısımı ben baz alarak sana sadece o kısımın td taglerindeki innerHTML içeriğini çekmeyi gösterdim. Yani sen tr taglerini ilk olarak for döngüsüyle çekmişsin zaten(?), sonrasında yapacağın şey her çektiğin tr içindeki td taglerini tekrar döngüyle gösterdiğim şekilde almaktı. Ama sen belliki sayfadaki tüm td taglerini çektirmişsin ki "arada gereksiz şeyler geliyodu" demişsin.
ilk yorumundaki kod içinde verdiğin td ile ilgili olan taglerin içerisine "veri-1, veri-2" diye yazdırmışsın ya hani? hah işte onu aldım "asd.txt" diye bir metin belgesine kaydettim ve ordan okutmaya yaparak örnek gösterdim anlaman için, benim elde ettiğim sonuç aşağıdaki gibi.
senin verdiğin örnek dışında gereksiz diye tabir ettiğin bir şey olmadığına göre, ya dediğimi anlamayıp sayfadaki bütün "td" taglerini çektirmişsin ya da gerçeği yansıtmayan bir örnek vermişsin. Onun haricinde hiç kimse sayfayı baştan aşağı inceleyip sana tam bir kod hazırlamaz.
Vip üye
    
Üyelik Tarihi: 24-01-2017
Yorum Sayısı: 690
Konu Sayısı: 23
Rep Puanı:
11
Çok özür dilerim gecemor hocam, sorun bende html kodunu düzgün paylaşamadım. Senin yaptığın yol gerçekten güzel ve mantıklı. Hem bu şekilde verileride ayırtetmiş olurum.
Yanlız html içinde veri diye yazdığım yerlerde ' ' bu gelince bs bunu direk geçiyor ve satırların düzeni değişiyor. Bununla ilgili şimdi çalışıyorum...
Vip üye
    
Üyelik Tarihi: 24-01-2017
Yorum Sayısı: 690
Konu Sayısı: 23
Rep Puanı:
11
12-01-2018, Saat: 15:43
(Son Düzenleme: 12-01-2018, Saat: 17:43, Düzenleyen: oktay811.)
gecemor hocam müsait bir zamanda şuna bir bakabilir misin?
Kod:
response = http://nfhost.net/~oktay811/den3.html
soup = BeautifulSoup(response, 'html.parser')
soup.prettify(formatter=lambda s: s.replace(u'\xa0', ' '))
for bilgi in soup.find_all('table', class_="HeadAp"):
no = [bilgi.find('span', attrs={'id': 'Banner1_Kullanici1_txtOgrenciNo'}).text.encode("utf8")]
isim = [bilgi.find('span', attrs={'id': 'Banner1_Kullanici1_txtAdiSoyadi'}).text.encode("utf8")]
fakulte = [bilgi.find('span', attrs={'id': 'Banner1_Kullanici1_txtFakulteAdi'}).text.encode("utf8")]
bol = [bilgi.find('span', attrs={'id': 'Banner1_Kullanici1_txtBolumAdi'}).text.encode("utf8")]
gano = [bilgi.find('span', attrs={'id': 'Banner1_Kullanici1_txtSinifSeneGano'}).text.encode("utf8")]
sonuc = fakulte + bol + no + gano + isim
print sonuc
>>['M\xc3\x9cHEND\xc4\xb0SL\xc4\xb0K FAK\xc3\x9cLTES\xc4\xb0', 'GIDA M\xc3\x9cHEND\xc4\xb0SL\xc4\xb0\xc4\x9e\xc4\xb0', '1030610524', 'OKUYOR(4. SINIF) - GANO : 2.27' ]
encoding, decoding hakkında biraz yardıma ihtiyacım var..
sitenin örneği:
http://nfhost.net/~oktay811/den3.html
aşağıda kodu kullanarak bi deneme yapabilrsin, nerde çalıştırıyosun kodları? ve tabi en son bunu nerde göstereceksin? konsolda belki problem yaşayabilirsin ama web sayfası vs gibi bir yerde görüntülenecekse sorun olmayabilir.
Kod:
# -*- coding: cp1254 -*-
Vip üye
    
Üyelik Tarihi: 24-01-2017
Yorum Sayısı: 690
Konu Sayısı: 23
Rep Puanı:
11
14-01-2018, Saat: 21:59
(Son Düzenleme: 14-01-2018, Saat: 22:05, Düzenleyen: oktay811.)
hocam botu bitirdim, tam istediğim gibi oldu fakat şu encoding sorununu henüz çözemedim.
bide kullanıcı adı veya şifre yi yanlış girdinmi herhangi bir cevap yazamıyorum, onu da çözmeye çalışıyorum bide
telegram görüntüsünde bir sorun görünmüyor encode ile ilgili? Kullanıcı adı ve şifren yanlış girilince html içerisinde neler değişiyosa onları baz alarak "giriş bilgileri hatalı" gibi çıktı verdirebilirsin
Vip üye
    
Üyelik Tarihi: 24-01-2017
Yorum Sayısı: 690
Konu Sayısı: 23
Rep Puanı:
11
16-01-2018, Saat: 00:01
(Son Düzenleme: 16-01-2018, Saat: 00:02, Düzenleyen: oktay811.)
Siteden gelen verilerde envode hatası vermiyor, ama benim göndermeye çalıştığım yazılarda hata veriyor. Resimde görünen son mesaj da mesela daha düzgün yazmak isterdim  Neyse müsat oldukça bakıcam artık bu bota...
Bide hocam ben bu py dosyasını 7/24 ücretsiz nerde yürütebilirim? Benim server var orda yürütüyorum şimdi ama yakında onun kredisi bitecek...
işte nasıl gönderiyosun orasını bilmediğimden, kodarı da görmediğimden bir şey demek zor...
şimdi botun istek işleme şekli nedir bilmiyorum, sunucuda çalıştırdığına göre port dinliyodur ve o ip:port ile iletişim kuruyosundur. Bu durumda böyle bir servisi ücretsiz bulman biraz zor. Amazon web service (aws) ücretsiz olarak 750 saate kadar müsaade ediyor, ücretsiz planı sunduğu makinalarda. Fakat trafik aylık 15gb gibi düşük bir boyutta, dolayısıyla upload ve download sıkıntılı. Yine de ram 1gb ve disk 30gb civarında. Senin bu bot gibi aşırı veri harcamayan bir sistem için kullanılabilir.
Onun haricinde şimdi bunu yazarken bi taraftan google'a göz gezdirdim ve bir tane telegram bot buldum, adam google appengine üzerinde kurmuş, doğal olarak get veya post metodu ile çalışıyodur. Appengine üzerinde ücretsiz proje oluşturabiliyosun ve belli bir zaman sınırlaması da yok. Bence değerlendirmeye değer, istersen bi incele
https://github.com/yukuku/telebot
Vip üye
    
Üyelik Tarihi: 24-01-2017
Yorum Sayısı: 690
Konu Sayısı: 23
Rep Puanı:
11
16-01-2018, Saat: 09:18
(Son Düzenleme: 16-01-2018, Saat: 09:29, Düzenleyen: oktay811.)
gecemor evet hocam onu gördüm, yanlız şimdi bu bot hani sayfayı çekiyor ya onun için sayfaları saklıyacak hafızaya ihtiyaç duyabilir. Ben google app engine çalışma mantığı hakkında pek bilgi sahibi değilim. Siz eğer appengine hakkında bilgi sahibi iseniz size şöyle bir soru sormak isterim.
Benim yapmaya çalıştığım botun 3 fonksiyonu olacak; not sorgusu, duyurular ve haberler. Bunları çekip kullanıcıya göndermek google app engine de python2.7için mechanize ve beautifulsoup kütüphaneleri kurulu mudur? Bir de Okulun sayfası bazen kapalı oluyor, bazen de .pdf dosyaları duyurular da olabiliyor. Ben duyuru fonksiyonu için kullanıcı duyuru için sorgu yaptığında sayfayı ve dökümanı hafızaya kaydetip oradan göndermesini istiyorum ki sayfa kapalı olduğunda kullanıcıya son duyuru gönderebileyim. Yani 15-20mb bir alana ihtiyacım var. Google app engine acaba böyle bir imkan ve python2.7 desteği verir mi?
Bir de appengine için Google cloud hesabı açmaya gerek var mı? Ben daha önce denedim benim kredi kartını kabul etmiyor bir türlü
|