this page makalelerini kazıyorum. Ancak, sayfayı aşağı kaydırdığımda Ajax aracılığıyla yükler. Şimdiye kadar bu başarıya ulaşmadan POST isteğini simüle etmeye çalışıyorum. İşte sorunumu açıklayan kod pasajı.Web sayfasının lazili Scrub ile yüklenmesi ile ilgili sorunlar
import scrapy
class eroskiSpider(scrapy.Spider):
name = "eroski"
allowed_domains = ['https://www.compraonline.com']
start_urls = [
'https://www.compraonline.grupoeroski.com/es/'
]
counter = 0
def parse(self, response):
for sel in response.xpath('//nav[@class="navmenu"]/ul/li/div/ul/li'):
cat_title = sel.xpath('a/@title')[0].extract()
href = sel.xpath('a/@href')[0].extract()
url = response.urljoin(href)
print 'Parsing category ' + cat_title
yield scrapy.Request(url, callback = self.parse_cat, dont_filter = True)
break
def parse_cat(self, response):
category = response.xpath('//head/title/text()').extract_first()
counter = 0
for sel in response.xpath('//article'):
counter = counter + 1
print 'counter is ' + str(counter)
description = sel.xpath('.//h2[contains(@class, "description_title")]/a/@title').extract_first()
print description
payload = {'pageNumber': '2', 't:zoneid': 'zoneScroll'}
yield scrapy.FormRequest(url = response.url, formdata = payload, dont_filter=True)
bunu sayfa ilk yüklendiğinde görünen aynı 20 öğeleri için sonsuza döngüler nasıl Gördüğünüz kodu çalıştırırsanız. Bu nedenle, FormRequest ile daha fazla makale yüklememe niyetim yanlıştır. Neyin yanlış olduğu hakkında bir fikrin var mı?
Hangi terapi sürümünü kullanıyorsunuz? – gerosalesc