Scrapy'yi kullanarak bir url taramaya çalışıyorum. Ama beni olmayan bir sayfaya yönlendiriyor.scrapy- nasıl yönlendirilir Yönlendirme (302)
Redirecting (302) to <GET http://www.shop.inonit.in/mobile/Products/Inonit-Home-Decor--Knick-Knacks-Cushions/Shor-Sharaba/Andaz-Apna-Apna-Cushion-Cover/1275197> from <GET http://www.shop.inonit.in/Products/Inonit-Home-Decor--Knick-Knacks-Cushions/Shor-Sharaba/Andaz-Apna-Apna-Cushion-Cover/pid-1275197.aspx>
sorun http://www.shop.inonit.in/Products/Inonit-Home-Decor--Knick-Knacks-Cushions/Shor-Sharaba/Andaz-Apna-Apna-Cushion-Cover/pid-1275197.aspx var, ama http://www.shop.inonit.in/mobile/Products/Inonit-Home-Decor--Knick-Knacks-Cushions/Shor-Sharaba/Andaz-Apna-Apna-Cushion-Cover/1275197 değil, bu nedenle paletli bu bulamıyorum. Diğer birçok web sitesini de taradım, ancak başka bir yerde bu problemi yoktu. Bu yönlendirmeyi durdurabilmemin bir yolu var mı?
Herhangi bir yardım çok takdir edilecektir. Teşekkürler.
Güncelleme: Bu benim örümcek sınıftır
class Inon_Spider(BaseSpider):
name = 'Inon'
allowed_domains = ['www.shop.inonit.in']
start_urls = ['http://www.shop.inonit.in/Products/Inonit-Gadget-Accessories-Mobile-Covers/-The-Red-Tag/Samsung-Note-2-Dead-Mau/pid-2656465.aspx']
def parse(self, response):
item = DealspiderItem()
hxs = HtmlXPathSelector(response)
title = hxs.select('//div[@class="aboutproduct"]/div[@class="container9"]/div[@class="ctl_aboutbrand"]/h1/text()').extract()
price = hxs.select('//span[@id="ctl00_ContentPlaceHolder1_Price_ctl00_spnWebPrice"]/span[@class="offer"]/span[@id="ctl00_ContentPlaceHolder1_Price_ctl00_lblOfferPrice"]/text()').extract()
prc = price[0].replace("Rs. ","")
description = []
item['price'] = prc
item['title'] = title
item['description'] = description
item['url'] = response.url
return item
Teşekkür tepki için! ama bu kod satırını nereye koyacağım konusunda biraz kafam karıştı mı? Start_request'lerin üzerine yazmayı denedim, ancak bana "Response" nesnesinin "body_as_unicode" özelliğine sahip olmamasına dair bir hata veriyor. Aynı anda bir ürün ve talep verebilir miyiz? –
Yönlendirmeyle hxs = HtmlXPathSelector (yanıtı) 'yı çağırabilirsiniz. Response.status == 302' yi test etmeniz ve başka bir işlem yapmanız gerekir. Bu durumda hxs başarısız olur çünkü response.body 302 durumu için boştur –
Birisi test edildi mi? Şu anki scrapy sürümü ile çalışmıyor, '' handle_httpstatus_list '' ile test ettim: [404, 301] 'sadece 404 çalışıyor –