Konuyu Oyla:
  • Toplam: 0 Oy - Ortalama: 0
  • 1
  • 2
  • 3
  • 4
  • 5
BeautifulSoup4 Hakkında yardım
#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 Smile 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
Ara
Cevapla
#12
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.
Turbobit Premium Link Çeviri | Turbobit Link Generator | http://turbobit.qpython.club
Cevapla
#13
Ç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...
Ara
Cevapla
#14
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
Ara
Cevapla
#15
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 -*-
Turbobit Premium Link Çeviri | Turbobit Link Generator | http://turbobit.qpython.club
Cevapla
#16
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 Smile
Ara
Cevapla
#17
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
Turbobit Premium Link Çeviri | Turbobit Link Generator | http://turbobit.qpython.club
Cevapla
#18
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 Smile 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... Sad
Ara
Cevapla
#19
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
Turbobit Premium Link Çeviri | Turbobit Link Generator | http://turbobit.qpython.club
Cevapla
#20
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ü Sad
Ara
Cevapla

{lang: 'en'}


Konu ile Alakalı Benzer Konular
Konular Yazar Yorumlar Okunma Son Yorum
  Soru Vpn hakkında Umutrc 0 1,658 26-02-2019, Saat: 23:52
Son Yorum: Umutrc
  Facebook oto dosya yükleme hakkında ahmettepe 4 3,356 09-11-2018, Saat: 15:18
Son Yorum: oktay811
  Python Yardım serseriarap 8 7,797 27-12-2017, Saat: 01:40
Son Yorum: serseriarap
  Çözüldü Lucky patcher'la ilgili yardım olcan 14 15,268 19-04-2017, Saat: 18:29
Son Yorum: olcan
  İnglizice Yardım :) ulas12 3 4,379 01-04-2017, Saat: 16:47
Son Yorum: Umutrc

Hızlı Menü:


Konuyu Okuyanlar: 1 Ziyaretçi
Change Theme