Python Düzenli İfadeler

Başlatan fghty, 18 Ocak 2013 - 20:31:31

« önceki - sonraki »

0 Üyeler ve 1 Ziyaretçi konuyu incelemekte.

fghty

http://www.hattrick.org bu siteden bilgi çekmek için re modülünü kullanayım dedim ama bazı sorunlar çıktı. Mesela "<title></title>" gibi bazı taglardaki bilgiyi alamıyorum. Normalde sitede bu taglarda bilgi gözüküyor. Bu neden kaynaklanıyor olabilir?

# -*- coding:utf-8 -*-
import re
import urllib

url = "http://www.hattrick.org"

f = urllib.urlopen(url)

nesne=f.read()

for i in f:
    nesne = re.search('<title>(.*)</title>',i)
    if nesne:
        print nesne.group()


Bu kodda hiçbir bilgi dönmüyor. Nedeni neden kaynaklanıyor olabilir?

egcodes

#1
Merhabalar benim az önce görmüşseniz eğer cevep yanlış olmuş adresi yanlış kopyaladım galiba.

Ama problem title tagdeki '\n' karakterlerinden kaynaklanmada galiba.


<title>
title yazi
</title>
1f u c4n r34d th1s u r34lly n33d t0 g37 l41d

fghty

Hocam sorunu tam anlayamadım. Kodda bi yeri eksik yazmışım şimdi orasını da ekledim.

egcodes

Evet onu görmüştüm söylemeyi unutmuşum ama yazdığın yine yanlış olmuş şöyle olacak.





nesne = re.search('<title>\\n.*</title>', f.read())







# -*- coding:utf-8 -*-
import re
import urllib


url = "http://www.hattrick.org"


f = urllib.urlopen(url)


nesne = re.search('<title>.*</title>', f.read())


if nesne:
        print nesne.group()



İkinci olarakta, çektiğin html'de <title> </title> arasında \n (satırbaşı-enter) karakterleri var. Sayfanın kaynağına bakıp görebilirsin o yüzden kod çalışmıyor onu çözmen gerek.
1f u c4n r34d th1s u r34lly n33d t0 g37 l41d

fghty

Anladım hocam HTMLParser ve re modülü beraber kullanarak deneyecem. Belki olur bu defa. :)