Я пытаюсь создать PDF-файл веб-страницы с веб-сайта https (Salesforce). Я до сих пор пытался использовать simple_salesforce, который возвращает sessionID (cookie) безрезультатно.Создайте PDF-страницу https, требующую входа в систему, используя pdfkit
from simple_salesforce import Salesforce
import pdfkit
sf = Salesforce(username='my username'
,password='my password'
,security_token= 'my API security token')
path_wkthmltopdf = r'C:\Program Files\wkhtmltopdf\bin\wkhtmltopdf.exe'
config = pdfkit.configuration(wkhtmltopdf=bytes(path_wkthmltopdf, 'utf8'))
options1 = {
'page-size': None,
'margin-top': None,
'margin-right': None,
'margin-bottom': None,
'margin-left': None,
'encoding': None,
'custom-header' : None,
'cookie': sf.session_id,
'no-outline': None
}
pdfkit.from_url('https://thiess.my.salesforce.com/0069000000IZH71','out.pdf',
configuration=config, options=options1)
Кто-нибудь знает, что является лучшим способом передать аргумент cookie в pdfkit?
В сценарии есть несколько опечаток, но после того, как они исправили их, работа сработала, но только любопытная. По-видимому, html-формат, созданный при вызове request.get, исказил макет веб-страницы, поэтому, хотя содержимое было там, внешний вид совершенно другой. Знаете ли вы какой-либо другой формат, который лучше сохранит внешний вид страницы? –
Тогда вы должны использовать тот же метод, но с BeautifulSoup. –
Красивый суп возвращает ссылки на изображения, которые при передаче в pdfkit сталкиваются с одной и той же проблемой pdfkit, которая сама не должна обрабатывать процесс аутентификации. –