playwright_t.py 1.1 KB

12345678910111213141516171819202122232425262728
  1. import asyncio
  2. from playwright.async_api import async_playwright,CDPSession,Page,Locator
  3. # 以启动路径的方式启动 chrome
  4. def start_chrome():
  5. import subprocess
  6. subprocess.Popen(
  7. r'"C:\Program Files\Google\Chrome\Application\chrome.exe" --user-data-dir=K:\\code\\upwork\\zhang_crawl_bio\\output\\user_data_dir'
  8. )
  9. async def get_win_pos_by_cdp(port=9220, host='localhost'):
  10. async with async_playwright() as p:
  11. browser = await p.chromium.connect_over_cdp(f"http://{host}:{port}")
  12. contexts = browser.contexts
  13. if contexts:
  14. print(f"contexts {contexts}")
  15. context = contexts[0]
  16. print(f"context.pages {context.pages}")
  17. page = context.pages[1]
  18. async def main():
  19. start_chrome()
  20. '''一定要在符合浏览器版本的 user_data_dir 下启动 chrome
  21. "C:\Program Files\Google\Chrome\Application\chrome.exe" --debug-port=9222 --user-data-dir=K:\\code\\upwork\\zhang_crawl_bio\\output\\user_data_dir2
  22. '''
  23. # await get_win_pos_by_cdp()
  24. if __name__ == "__main__":
  25. asyncio.run(main())