У меня есть простой логин и другая страница за именем входа. Как только я завершу логин (я могу получить сеанс пользователя). Если я запросить другую страницу сеанс ушелкак сеанс входа в систему в режиме scrapy
Образец реализации
from scrapy.item import Item, Field
from scrapy.http import FormRequest
from scrapy.spider import Spider
from scrapy.utils.response import open_in_browser
class TestSpider(Spider):
name = "test"
allowed_domains = ["example.com"]
start_urls = ["https://example.com/customer/account/login/"]
def parse(self, response):
token = response.xpath(".//input[contains(@name,'token')]/@value").extract()[0]
yield FormRequest.from_response(
response,
formnumber=1,
formxpath=".//*[@id='form-account-login']",
formdata={
'token' : token,
'LoginForm[email]': 'xxxx',
'LoginForm[password]': 'xxxx',
},
clickdata={'id': 'customer-account-login'},
callback=self.parse1,
)
def parse1(self, response):
return scrapy.Request(url="https://example.com/customer/account/list/", callback = self.parse_2, errback=self.error)
def parse1(self,response):
open_in_browser(response)
'COOKIES_DEBUG = True' может помочь выявить проблемы. –