Przeszukuję witrynę internetową (tylko dwa poziomy głębokości) i chcę pobrać informacje z witryn na obu poziomach. Problem, na który napotykam, polega na tym, że chcę wypełnić pola jednego przedmiotu informacjami z obu poziomów. Jak mam to zrobic?Scrapy CrawlSpider: jak uzyskać dostęp do elementu na różnych poziomach analizy składniowej
Myślałem, że mam listę elementów jako zmienną instancji, która będzie dostępna dla wszystkich wątków (ponieważ jest to ta sama instancja pająka), a parse_1 wypełni niektóre pola, a parse_2 będzie musiał sprawdzić, czy popraw klucz przed wypełnieniem odpowiedniej wartości. Ta metoda wydaje się być uciążliwa i nadal nie jestem pewien, jak ją uruchomić.
To, co myślę, to musi być lepszy sposób, może jakoś przekazać przedmiot do oddzwaniania. Nie wiem jak to zrobić za pomocą metody Request(). Pomysły?
Zrobiłem to, umieszczając informacje w adresie URL. Ta metoda wydaje się być lepsza, szczególnie w przypadku produktów, które nie są dobrze kodowane w adresach URL. Dzięki! – Muhd
Jeśli mam dwie strony - strona 2 i strona 3 - które również zawierają części informacji, jak mogę je wywoływać sekwencyjnie w dwóch różnych przypadkach scrapy.Requests? Mogę przekazać na wpół wypełniony przedmiot w "meta" obu, ale chcę się upewnić, że ostateczny "przedmiot" ma dane ze strony 1 + strona 2 + strona 3 - wszystkie razem – dowjones123