无法在 MacOS 和 ubutunOS 上从“playwright.sync_api”导入名称“sync_playwright”

Ton*_*ony 4 python playwright

我正在尝试导入剧作家框架。但是,我遇到了以下问题:

Traceback (most recent call last):
  File "simple.py", line 1, in <module>
    from playwright.sync_api import sync_playwright
ImportError: cannot import name 'sync_playwright' from 'playwright.sync_api' (/home/acid/dev/play/venv
/lib/python3.8/site-packages/playwright/sync_api.py)
Run Code Online (Sandbox Code Playgroud)

我已经通过以下命令安装了剧作家:

pip install playwright==1.8.0a1
playwright install
Run Code Online (Sandbox Code Playgroud)

然后,运行脚本:

from playwright.sync_api import sync_playwright

    with sync_playwright() as p:
        for browser_type in [p.chromium, p.firefox, p.webkit]:
            browser = browser_type.launch()
            page = browser.new_page()
            page.goto('http://whatsmyuseragent.org/')
            page.screenshot(path=f'example-{browser_type.name}.png')
            browser.close()
Run Code Online (Sandbox Code Playgroud)

然而,仍然没有成功。对于这个问题你有什么建议吗?提前致谢

小智 8

mxschmitt 在 GitHub 上说

问题可能是您的文件名为playwright.py,也许尝试将其重命名trying_playwright.py为 。


小智 5

参考这个

  1. pip install --upgrade pip
    
    Run Code Online (Sandbox Code Playgroud)
  2. pip uninstall playwright
    
    Run Code Online (Sandbox Code Playgroud)
  3. pip install playwright
    
    Run Code Online (Sandbox Code Playgroud)
  4. 更改到您的脚本目录

  5. playwright install
    
    Run Code Online (Sandbox Code Playgroud)