Python данные отправки формы scrapy - PullRequest
0 голосов
/ 14 февраля 2020

Добрый день. Поэтому я пытаюсь выяснить, как работает отправка данных формы.

Так что это форма, которую я хочу отправить

enter image description here

Так выглядит сетевой процесс enter image description here

Это код

class OutletBot(CrawlSpider):
    name = 'hun73r'
    start_urls = ['https://www.laptopoutlet.co.uk/']
    allowed_domains = ['laptopoutlet.co.uk/']

    def parse(self, response):

        z = response.css('.header-bottom-wrap>div>div>div>form')
        type = ''
        brand = ''
        core = ''
        screensize = ''
        for option in z.css('#brand_div>select>option').extract():
            if 'APPLE' in option:
                brand = option.split('"')[1]
                print(brand)
        for option in z.css('#processor_div>select>option').extract_first():
            if 'i5' in option:
                core = option.split('"')[1]
                print(core)

        formdata = {'type': type,
                    'brand': brand,
                    'core': core,
                    'screensize': screensize}

        yield scrapy.FormRequest.from_response(
            response,
            clickdata={'type': 'submit'},
            # callback=self.parse_form,
            formdata=formdata,
            method='GET')

Когда я проверяю этот код в терминале для ответа, он выдает форму /checkout/cart/. Как я могу получить sumbit форму /categorysearch/advanced/result/? Чего мне не хватает?

1 Ответ

0 голосов
/ 14 февраля 2020

Итак, я обнаружил, что у from_response есть аргумент formid, который я установил для идентификатора формы

formid='search_filter_form',
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...