Я анализирую HTML-страницу с двухуровневым меню.
Когда меню верхнего уровня изменилось, был отправлен запрос AJAX для получения пункта меню второго уровня. Когда выбраны верхнее и второе меню, обновите содержимое.
Мне нужно отправить еще один запрос и получить ответ в подменю в функции scopy parse
. Так что я могу перебрать подменю, построить scrapy.Request
для каждого элемента подменю.
Псевдокод, подобный следующему:
def parse(self, response):
top_level_menu = response.xpath('//TOP_LEVEL_MENU_XPATH')
second_level_menu_items = ## HERE I NEED TO SEND A REQUEST AND GET RESULT, PARSED TO ITME VALUE LIST
for second_menu_item in second_level_menu_items:
yield scrapy.Request(response.urljoin(content_request_url + '?top_level=' + top_level_menu + '&second_level_menu=' + second_menu_item), callback=self.parse_content)
Как я могу это сделать?
Использование requests
lib напрямую? Или какая-то другая функция, предоставляемая скрапом?