como filtrar solicitações duplicadas com base na URL em escassa
Estou escrevendo um rastreador para um site usando scrapy com CrawlSpider.
O Scrapy fornece um filtro de solicitação duplicado embutido que filtra solicitações duplicadas com base em URLs. Além disso, posso filtrar solicitações usandoregras membro de CrawlSpider.
O que eu quero fazer é filtrar solicitações como:
http:://www.abc.com/p/xyz.html?id=1234&refer=5678
Se eu já visitei
http:://www.abc.com/p/xyz.html?id=1234&refer=4567
NOTA: refer é um parâmetro que não afeta a resposta que recebo, então não me importo se o valor desse parâmetro mudar.
Agora, se eu tiver um conjunto que acumule todosids Eu poderia ignorá-lo na minha função de retorno de chamadaparse_item (essa é a minha função de retorno de chamada) para obter essa funcionalidade.
Mas isso significaria que eu ainda estou buscando pelo menos essa página, quando não preciso.
Então, qual é a maneira em que posso dizer que não deve enviar uma solicitação específica com base na URL?