2 günlük tatil iyi geldi, bu seferki biraz daha ayrıntılı bir rümcek. :)Ne yapıyor:Aktif konulara girdikten sonra her konuya teker teker bakıyor. Bu arada geldiği url'yi, konu başlığını ve konunun ilk mesajını kayıt ediyor. items. py içeriği: from scrapy. item import Item, Field class Tbt2Item : url = Field konu = Field ilkmesaj = Field rümceğin içeriği: from scrapy. contrib. spiders import CrawlSpider, Rule from scrapy. contrib. linkextractors. sgml import SgmlLinkExtractor from scrapy. selector import HtmlXPathSelector from tbt2. items import Tbt2Item class TbtSpider : # rümceğin ismi tbt2 name = 'tbt2' # Nereden başlangıç yapacağımızı yazalım. start_urls = # Burada hangi linklerin takip edileceğini belirteceğiz, bunun için regex i kullandım. Aşağıdaki ifadede neler olduğuna gelince: Forum la başlayan devamında alfabedeki büyük küçük karakterlerin, rakamların veya tire işaretinin kullanıldığı tüm linkleri takip et dedik. Yalnız bazı konuların 2-3-4... gibi devam eden ek sayfaları takip etmemek için \/(?! ) desenini de ekledim. Son olarak da bu kurala uyan tüm linkleri parselle fonksiyonuna havale ettik. rules = [Rule(SgmlLinkExtractor(allow=[r' ( )+\/(?! )']), 'parselle')] # parsellediğimiz linklere ne olacağını burada belirleyeceğiz. def parselle : # Bu sefer de xpath i kullanacağız. x = HtmlXPathSelector icerik = Tbt2Item # geldiğimiz url yi url değişkenine atayalım. icerik = response. url # Konu başlığını almak için class'i Sol olan tüm td etiketlerinin içerisindeki yazı kısmını 'text ' çekiyoruz. Yalnız araya boşluklar da kaynadığı için burada xpath ile regex'i birlikte kullandım. regex sayesinde sadece yazının yani konu başlığının olduğu kısmı aldım. icerik = x. select('//td /text '). re # Burayı nasıl anlatacağımı bilemedim birden :) Konudaki ilk mesajın yolunu tarif ettik. Nedendir bilmem tbody etiketini kabul etmedi. Bende can sıkıntısı işte neredeyse bütün yolu yazdım. Bir noktaya dikkat etmenizi istiyorum belirttiğimiz yolun sonlarına doğru /text kullandık. Bu yüzden ilk mesaj içerisindeki linkler, kodlar vs. alınmayacaktır. Eğer tüm içeriği almak isterseniz /text kısmını silmeniz yeterli. icerik = x. select('//table /tr/td/div /table /tr /td /div /p/text '). extract return icerik xml rnek çıktı: <?xml version="1.0" encoding="utf-8"?> <items> <item> <url> http://tahribat.com/Forum-Oyku-Kitabim-177413/ </url> <ilkmesaj> <value> Sa beyler daha oncede konu acmistim hatirlamayanlar icin ozet geciyim yazarlik yetenegim var 300 kusur oyku yazdim gyzellerinden secip bastirmak istiyorum korku ve fantastik tarzda oykuler ve okuyanlar begendiklerini belirttiler sadede gelelim sevmedigim bir iste calisiyorum ve isi birakmak icinde 40 50m bi garantiye ihtiyacim var ama turkiyede bir oyku kitabi nekadar satabilir kestiremiyorum sizce? Para icin yazilmaZ muabbetine girmesseniz sevinirim hacilar ayrica telden yaziyorum ozensiz yazi... </value> </ilkmesaj> <konu> <value> ykü Kitabım </value> </konu> </item> <items> csv rnek çıktı: url, ilkmesaj, konu http://tahribat.com/Forum-Kablosuz-Modem-Access-Point-171072/, Hocalar şimdi benim evde net ve birde kablosuz modem var. Ben bununla beraber neti ev içinde rahatça kullanıyorum. Neyse kuzende neti kullanmak istedi ve üst kattan alt kata kablo çektik bunun için. Daha sonra kuzen bu kabloyu kendi kablosuz modemime bağlamış ve kullanıyorum diyor ama çok yakından çekiyormuş. Uzaklardan çekmiyormuş. Nedeni ne olabilir. Ve ben kendi bilgisayarımdan kuzenin modemine erişim sağlayabilir miyim?,"Kablosuz Modem / Access Point " İndir: http://www.dosya.tc/server6/C1BVNG/tbt2. zip.html Not: Açıklama satırları indirilebilir kodlarda yok. İşin ustası falan değilim, zor soru sormayın. :) Tavsiye: Bu işe girişmeden nce düzenli ifadeler ve xpath'e gz atın. Doğru desenleri bulması biraz sıkıntılı olabiliyor. regex denemeleri için http://gskinner.com/RegExr/ adresini kullanabilirsiniz. Takıldığınız bir noktayı internette aramadan nce manuel e bakmanızda fayda var: http://doc.scrapy. org/en/0.16/index.htmlXpath için size yardımcı olabilecek Firefox'ta Firebug, Google Chrome'da da xpathOnClick0.0.0.6 eklentisini tavsiye ederim. telekom tarafından 24/Nis/13 15:27 tarihinde düzenlenmiştir vatandaşa kafam girsin!..

belki yeri değil ama ben de bir şey sorayım, bir sitenin bir sayfasını tam olarak kopyalayan bir yazılım var mı? rneğin youtube sayfası veriyorsun, video dosyası da dahil indiriyor? indirme işi için wget kullanılabilir. Youtube taki gibi videoları indirmek istiyorsan farklı parametreleri kullanabilirsin. Ama bazı siteler içeriklerini gizli yapar; ücretli video sitesidir . Bunlarda videoları indirmek için farklı yntemler kullanırsın. URL sniff yapabilirsin, stream downloader vs. kullanabilirsin. Kısacası indirmek istediğin içeriğe gre yntem değişir. vatandaşa kafam girsin!..

xPath'e biraz çalışmam gerek anlaşılan. Türkçe bulabildiğim dişe dokunur tek kaynak:http://www.halitalptekin.com/tag/scrapy.html Sadece tahribat aktif konuları listeleyen bcük için: from scrapy. spider import BaseSpider from scrapy. selector import HtmlXPathSelector from tbt. items import TbtItem class MySpider : name = "tbt" allowed_domains = start_urls = def parse : hxs = HtmlXPathSelector titles = hxs. select('//td ') items = for titles in titles: item = TbtItem item = titles. select("a /text "). extract items. append return items Her seferinde kodu çalıştırıp çıktıya bakmaktansa scrapy shell http://tahribat.com/Aktif-Forum-Konulari/ ardından doğru yolu bulabilmek için burada denemeleri yapabilirsiniz. Üsttekiyle aynı işi yapan kod: hxs. select('//td /a /text '). extract rnek çıktı: title, Ankara'da Cisco CCNP Eğitimi Almak İsteyenler., Ses Kalınlaştırılabilir Mi?, Müslüm Gürses'ten Ümit Kesildi., Lozan Antlaşmasının Gizli Maddeleri, Hamachi Ile Dota Nasıl Oynanır?, VirtualBox Sanal İşletim Sistemlerinin Birbirini Grmesi, Rus Gencine Yıllardır Bakan Türk Kadını, Çin Kargo Takip Sitesi, DriverScanner Serial Key?... Çıktıları istediğiniz formatta almak için 2 rnek:scrapy crawl tbt -o cikti. csv -t csvscrapy crawl tbt -o cikti. xml -t xml Son olarak http://stackoverflow.com scrapy için eşsiz bir nimet. Kolay gelsin. vatandaşa kafam girsin!..

o değilde sphider i kullanayım dedim 2 site indexledim 1.5 cgb veri tabanı oldu yuh amk :D

Ben kullandım baya basit bir araç. Biz belli sitelerden veri toplayıp işlemek için kullanmıştım gidiyor tüm siteyi topluyor indexliyor sonrada biz işlemeye başlıyorduk. Biraz yavaş ve veritabanına kaydetme konusunda biraz sıkıntılıydı ama şu anki durumunu bilmiyorum. En büyük artısı arama sonuclarını xml olarak verebiliyor Teşekkür ederim, ayıklamayı yaptıktan sonra verileri xml olarak vermesi yeterli. Çok fazla site olmayacak zaten. Biraz kurcalayayım, gün sonunda becerebilirsem bir rnek yüklerim. :) ErotikPanda bunu yazdı o değilde sphider i kullanayım dedim 2 site indexledim 1.5 cgb veri tabanı oldu yuh amk :D derinliği ayarlamazsan, tüm linkleri takip ettirirsen olacağı buydu. :) vatandaşa kafam girsin!..

Ben kullandım baya basit bir araç. Biz belli sitelerden veri toplayıp işlemek için kullanmıştım gidiyor tüm siteyi topluyor indexliyor sonrada biz işlemeye başlıyorduk. Biraz yavaş ve veritabanına kaydetme konusunda biraz sıkıntılıydı ama şu anki durumunu bilmiyorum. En büyük artısı arama sonuclarını xml olarak verebiliyor Mühendis kahveyi projeye dnüştüren bir insan evladıdır.

ErotikPanda bunu yazdı o değilde sphider i kullanayım dedim 2 site indexledim 1.5 cgb veri tabanı oldu yuh amk :D derinliği ayarlamazsan, tüm linkleri takip ettirirsen olacağı buydu. :) Hacı bu işin derinliğimi olur tabi herşeyi indexleyecek. Yoksa ne anlamı kalıyo :)

Ben kullandım baya basit bir araç. Biz belli sitelerden veri toplayıp işlemek için kullanmıştım gidiyor tüm siteyi topluyor indexliyor sonrada biz işlemeye başlıyorduk. Biraz yavaş ve veritabanına kaydetme konusunda biraz sıkıntılıydı ama şu anki durumunu bilmiyorum. En büyük artısı arama sonuclarını xml olarak verebiliyor Senin bana seneler nce nerdiğin vardı buydu galba. İndirip incelemiştim. Canım çıkmıştıda, ona rağmen kodları tam çzememiştim.

Python ile yazılmış bir framework. http://scrapy.org/Merak ettiğim daha ncesinde projesinde kullanmış olan var mı? Bunu ya da apache nutch'u projemde kullanacağım ama hangisinin daha verimli olacağı konusunda kararsızım. Yabancı forumlarda genelde nutch vülmüş ama kullanımının zor olduğu yazıyor. Ek olarak nutch java ile yazılmış. Oldum olası java'ya ısınamadım ). O yüzden python ile yazılmış scrapy'e daha sıcak yaklaşıyorum. neri, tavsiye, herbir şeye açığım... vatandaşa kafam girsin!..

belki yeri değil ama ben de bir şey sorayım, bir sitenin bir sayfasını tam olarak kopyalayan bir yazılım var mı? rneğin youtube sayfası veriyorsun, video dosyası da dahil indiriyor?