Как отправить куки с PDFKit в Python? - PullRequest
2 голосов
/ 26 октября 2019

Я пытаюсь загрузить некоторые страницы в формате PDF. Тем не менее, страницы требуют, чтобы я вошел в систему, поэтому я просто отправил файлы cookie вместе с моим запросом (используя модуль запросов). Это сработало. Тем не менее, я не уверен, как отправить куки с PDFKit, чтобы добиться того же.

Вот код, который я пробовал. Я также пытался включить заголовки (чтобы предотвратить ошибку 403), но это не сработало. Я не могу найти это в документации, либо. Кто-нибудь знает, как я могу отправить куки для загрузки страниц?

import pdfkit

url = r'www.someurl.com'

cookies = {
            "cookie1": "cookie"
          }

headers = {'User-Agent': 'Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/56.0.2924.76 Safari/537.36'}

config = pdfkit.configuration(wkhtmltopdf="C:\\Program Files\\wkhtmltopdf\\bin\\wkhtmltopdf.exe")

pdfkit.from_url(url, 'out.pdf', configuration=config, options=cookies)

1 Ответ

1 голос
/ 27 октября 2019

В соответствии с описанием проекта PDFkit вы можете установить куки, используя этот подход:

options = {'cookie': [('cookie-name1', 'cookie-value1'),
                      ('cookie-name2', 'cookie-value2')]}

pdfkit.from_url('http://google.com', 'out.pdf', options=options)
...