Скрап кормления новых куки-файлов на запросы, данные перенаправления - PullRequest
0 голосов
/ 02 апреля 2020

У меня есть паук-скрап, которому нужны куки, сгенерированные через логин для успешного доступа к содержимому, которое я sh очистил. Я нашел, что это легче сделать с помощью селена и успешно доставлять печенье в скребок. Какое-то время это работает, однако, в конце концов, файлы cookie становятся недействительными, и сайт начинает перенаправлять меня на домашнюю страницу. Каков наилучший способ снова войти в систему, освежить файлы cookie и продолжить очистку содержимого?

Вот пример того, что у меня есть.

class LoginSpider(scrapy.Spider):

    name="login_scraper"

    def __init__(self):
        self.current_cookies = self.freshen_cookies()
        super(LoginSpider,self).__init__()

    def freshen_cookies(self):
        user_name = 'someuser'
        password = 'somepass'
        #login with selenium to get the form data we need.
        driver = webdriver.Chrome()
        login_page='https://someurl.com/login'
        driver.get(login_page)
        username = driver.find_element_by_name("userid")
        username.send_keys(user_name)
        password = driver.find_element_by_name("password")
        password.send_keys(password)
        signin = driver.find_element_by_class_name('button')
        signin.click()
        sleep(10)
        cookies = driver.get_cookies()
        driver.close()
        return cookies

    def start_requests(self):
        for i in xrange(0,1000):
            to_query = 'https://someurl.com/interestingcontent_page'+i 
            yield scrapy.http.Request(to_query,
                                  cookies=self.current_cookies,
                                       dont_filter=True,
                                      callback=self.parse)
    def parse(self,response):
          #do some stuff
          yield {}

Что у меня есть? пытался? Я пытался написать свое собственное промежуточное ПО и редактировать промежуточное ПО перенаправления. Ни один из этих методов не сработал очень хорошо по разным причинам. С промежуточным программным обеспечением, которое я написал, было слишком много запросов на вход в систему и обновление sh файлов cookie, которые начали генерироваться. С реализацией пересмотра промежуточного программного обеспечения для перенаправления файлы cookie, похоже, не обновлялись вообще.

Предыдущие вопросы посвящены тому, как устанавливать файлы cookie в первую очередь, как случайным образом извлекать файлы cookie из некоторого предыдущего набора, но ни один из них, который я могу найти, не рассматривал способы динамической настройки файлов cookie, учитывая, что во время ползать (например, 302 встречается).

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