я новичок в поиске в сети, я пытаюсь отправить запрос с куки, но думаю, что я что-то не так делаю. я получаю куки со значением фильтра в области исследований. fisrt скажите мне, мне нужно скачать пакет экстракта для отправки куки в запросе. Во-вторых, мне нужно активировать что-то в настройках. Вот мой код, я француз, поэтому команда и веб-сайт французские
import scrapy
from ..items import DuproprioItem
from scrapy.http import FormRequest
#for remove encoding \xa0 = var.replace(u'\xa0', ' ')
# fonctionnement de scrapy avec multi pagination et liens multiples sur chaque page
# 1- on doit toujours cree la premiere fonction avec ne nom : 'parse'
# 2- dans cette fonction on commence par extraire les URL de tous les liens et on les renvoie dans une nouvelles fonction pour ensuite extraire les donner
# 3- on recupere les URL de toute les pages pour cree un pagination
# 4- on cree une pagination qui va permettre de recupere tous les fiches de tous les pages
# 4- on cree une nouvelle fonction qui extrait les donners des fiches
class BlogSpider(scrapy.Spider):
name = 'remax_cookies'
start_urls = [
'https://www.remax-quebec.com/fr/infos/nous-joindre.rmx'
]
def parse (self, response):
yield scrapy.http.Request("https://www.remax-quebec.com/fr/recherche/residentielle/resultats.rmx", callback=self.parse_with_form,method='POST',cookies={
'mode': 'criterias',
'order':'prix_asc',
'query': '',
'categorie':'residentielle',
'selectItemcategorie': 'residentielle',
'minPrice':'100000',
'selectItemminPrice': '100000',
'maxPrice':'200000',
'selectItemmaxPrice': '200000',
'caracResi7':'_',
'caracResi1': '_',
'caracResi4':'_',
'caracResi8': '_',
'caracResi2':'_',
'caracResi12': '_',
'caracComm4':'_',
'caracComm2': '_',
'caracComm5':'_',
'caracFarm3': '_',
'caracFarm1':'_',
'caracLand1': '_',
'caracResi5':'_',
'caracResi9': '_',
'caracResi10':'_',
'caracResi3': '_',
'caracResi6':'_',
'caracResi13': '_',
'caracComm3':'_',
'caracComm1': '_',
'caracFarm2':'_',
'uls': ''
})
def parse_with_form(self,response):
#je vais chercher tous les liens sur la page a suivre pour extraire les fiches des maisons
links_fiche = response.css('a.property-thumbnail::attr(href)').extract()
#j'extract tous les liens avec une boucle
for fiche in links_fiche:
#je renvoie tous les viens vers une fonction scraper exterieur pour ensuite extraire les donner des fiches recu(parse_fiche)
yield response.follow(fiche, self.parse_fiche)
#je scrape les donner recu de
def parse_fiche(self, response):
items = DuproprioItem()
price = response.css('h4.Caption__Price span').css('::text').get().strip()
items['price'] = price
yield items