Scopy смоделированный вход в систему перенаправлен несколько раз, в конечном итоге возвращается на страницу входа - PullRequest
1 голос
/ 07 февраля 2020

Я использовал Scrapy для симуляции процесса входа пользователя на сайт (извините, я не могу поделиться URL здесь). После отправки правильного имени пользователя и пароля с помощью FromRequest, веб-сайт перенаправляет страницу входа в систему (A) на B, затем B снова перенаправляется на C, затем странным образом C снова на A; Хотя я ожидал C, но он всегда возвращается к A. Я совершенно уверен в правильности моего U / P, как будто я намеренно сделал это неправильно, перенаправление с веб-сайта отсутствует. С этим вводом U / P в браузер, я могу успешно достичь C.

Мой вопрос: как я могу попасть на страницу C с имитацией входа пользователя в Scrapy?

Код:

    class MusicSpider(Spider):
        name = 'music'
        start_urls = (
                 'https://www.example.com/aro/login/',
        )

        handle_httpstatus_all = True

        def parse(self, response):
            if response.status == 200:
                return FormRequest.from_response(response,
                    formdata={
                               'p': 'password',
                               'u': 'username',
                               'keepin': '0',
                               },
                    callback=self.scrape_pages)

        def scrape_pages(self, response):
            if response.status == 302:
                filename = 'fly-1.html'
                open_in_browser(response)
                if (os.path.exists(filename)):
                    os.remove(filename)
                with open(filename, 'wb') as f:
                    f.write(response.body)
                self.log('Saved file %s' % filename)

Здесь ниже Scrapy текущий журнал:

2020 5:51:45 [scrapy.middleware] ИНФОРМАЦИЯ: конвейеры включенных элементов: [] 2020 5:51:45 [scrapy.core.engine] ИНФОРМАЦИЯ: Паук открыт 2020 5 : 51: 45 [scrapy.extensions.logstats] ИНФОРМАЦИЯ: просканировано 0 страниц (при 0 страницах / мин), очищено 0 элементов (при 0 элементах / мин) 2020 5:51:45 [scrapy.extensions.telnet] ИНФОРМАЦИЯ: Te lnet консольное прослушивание 127.0.0.1:5026 2020 5:51:49 [scrapy.downloadermiddlewares.cookies] DEBUG: полученные файлы cookie от: <200 <a href="https://www.example.com/aro/login/" rel="nofollow noreferrer">https://www.example.com/aro/login/> Set-Cook ie: c5ib = 0; Истекает = Чт 1 января 16:00:00 1970 по Гринвичу; Путь = / bin /

Set-Cook ie: c5ib = 0; Истекает = Чт 1 января 16:00:00 1970 по Гринвичу; Путь = / bin

Set-Cook ie: c5ib = 0; Истекает = Чт 1 января 16:00:00 1970 по Гринвичу; Путь = /

2020 5:51:49 [scrapy.core.engine] ОТЛАДКА: Сканировано (200) https://www.example.com/aro/login/> (реферер: нет) 2020 5:51:49 [scrapy.downloadermiddlewares.cookies] ОТЛАДКА: Отправка файлов cookie по адресу: https://www.example.com/aro/login> Cook ie: c5ib = 0

2020 5:51:50 [scrapy.downloadermiddlewares.cookies] ОТЛАДКА: Получено печенье от: <302 <a href="https://www.example.com/aro/login" rel="nofollow noreferrer">https://www.example.com/aro/login> Set-Cook ie: c5ib = 0; Истекает = Чт 1 января 16:00:00 1970 по Гринвичу; Путь = / bin /

Set-Cook ie: c5ib = 0; Истекает = Чт 1 января 16:00:00 1970 по Гринвичу; Путь = / bin

Set-Cook ie: c5ib = 0; Истекает = Чт 1 января 16:00:00 1970 по Гринвичу; Path = /

Set-Cook ie: c5ib = 00000000000000107711SL6yKs8iiluvP0gfZ8X3Rz; Безопасный; HttpOnly; Путь = /

2020 5:51:50 [scrapy.downloadermiddlewares.redirect] ОТЛАДКА: Перенаправление (302) на https://www.example.com/aro> из https://www.example.com/aro/login> 2020 5:51:50 [scrapy.downloadermiddlewares.cookies ] ОТЛАДКА: Отправка файлов cookie на: https://www.example.com/aro> Cook ie: c5ib = 00000000000000107711SL6yKs8iiluvP0gfZ8X3Rn

2020 5:51:51 [scrapy.downloadermiddlewares.redirect] ОТЛАДКА: 10 *> перенаправить (302) с https://www.example.com/aro> 2020 5:51:51 [scrapy.downloadermiddlewares.cookies] ОТЛАДКА: Отправка файлов cookie для: https://www.example.com/bin/c5i> Cook ie: c5ib = 0; c5ib = 0; c5ib = 00000000000000107711SL6yKs8iiluvP0gfZ8X3Rn

2020 5:51:55 [scrapy.downloadermiddlewares.redirect] ОТЛАДКА: Перенаправление (302) на https://www.example.com/aro/login> с https://www.example.com/bin/c5i> 2020 5:51:55. ] ОТЛАДКА: Отправка файлов cookie на: https://www.example.com/aro/login> Cook ie: c5ib = 00000000000000107711SL6yKs8iiluvP0gfZ8X3Rn

2020 5:51:56 [scrapy.downloadermiddlewares.cookies] ОТЛАДКА: 10 полученных файлов cookie от: <200 1051 *</a>> Set-Cook ie: c5ib = 0; Истекает = Чт 1 января 16:00:00 1970 по Гринвичу; Путь = / bin /

Set-Cook ie: c5ib = 0; Истекает = Чт 1 января 16:00:00 1970 по Гринвичу; Путь = / bin

Set-Cook ie: c5ib = 0; Истекает = Чт 1 января 16:00:00 1970 по Гринвичу; Путь = /

2020 5:51:56 [scrapy.core.engine] ОТЛАДКА: Сканировано (200) https://www.example.com/aro/login> (реферер: https://www.example.com/aro/login/) 2020 5:51: 56 [scrapy.core.engine] ИНФОРМАЦИЯ: Закрывающий паук (готово)

...