【发布时间】:2023-01-30 02:49:35
【问题描述】:
语境:
- 编剧版:1.29.1
- 操作系统:视窗
- 蟒蛇版本:3.8.2
- 浏览器:铬
描述错误
在某些特定情况下会出现此错误,通常是直接或间接打开 pdf 预览页面时。
def test():
from playwright.sync_api import sync_playwright
with sync_playwright() as p:
browser = p.chromium.launch(headless=False) _**#In this situation, with headless set to False, the blank pdf is issued, but when set to True, it is not possible to send it. Any suggestion?**_
context = browser.new_context()
page = context.new_page()
page.goto('https://nyc3.digitaloceanspaces.com/midia/wp-content/uploads/2023/01/4tmrioel-sample.pdf')
page.pdf(path='Test.pdf', format='A4')
test()
例如,在下面的代码 sn-p 中,生成的 pdf 是空的,空白的(屏幕截图是黑色的,没有内容)。我注意到这个错误是因为速度而发生的,所以我使用了 睡眠库,因为 wait_for_load_state() 在这种情况下不起作用。 然而,新生成的 pdf 出现了错误的格式(这里是一张显示打印的附加图像,我隐藏了内容,但布局与黑色相同)
我的理论是,由于 chromium pdf 查看器摘要,页面会像这样生成。所以,我试图在这段代码中禁用它:
def test():
from playwright.sync_api import sync_playwright
from time import sleep
with sync_playwright() as p:
# browser = p.chromium.launch(headless=False)
browser = p.chromium.launch_persistent_context(user_data_dir=r'C:\Users\pedro\AppData\Local\Temp\playwright_chromiumdev_profile-AidV4Q\Default', args=['--print-to-pdf', '--disable-extensions', '--print-to-pdf-no-header'], headless=False)
page = browser.new_page()
page.goto('https://nyc3.digitaloceanspaces.com/midia/wp-content/uploads/2023/01/4tmrioel-sample.pdf')
sleep(5)
page.pdf(path='test.pdf', format='A4')
input()
尽管如此,我仍无法解决问题。 详细信息:无法在 Headless 模式下运行这些代码,chromium 似乎正在自动化(使检测更容易)。那么,有人能解决我的问题吗?
【问题讨论】:
标签: python playwright playwright-python