首页 > 编程语言 >python+playwright 学习-42 离线安装 playwright 环境

python+playwright 学习-42 离线安装 playwright 环境

时间:2023-03-30 12:45:52浏览次数:49  
标签:playwright builds zip python win64 离线 net chromium

前言

有些同学可能是在公司局域网办公,无法连到外网去在线下载,本篇教大家在本地局域网部署好 playwright 环境

playwright 本地下载

先找个有网络的电脑,下载playwright,不要去pypi库单独下载这一个包,它在安装过程中还会下载其他依赖包。
如果你只下载一个playwright-1.32.1-py3-none-win_amd64.whl,然后pip安装肯定会失败。
正确的方法是通过pip download playwright 下载安装包

pip download playwright -d ./down

-d 参数是指定下载安装到本地down目录

正常情况下会下载以下四个包

如果你还需要有其他的包需要下载,也可以按上面方式下载,比如pytest,allure-pytest 等包

多个包批量下载

如果你本地已经安装了一些依赖包了,可以通过pip freeze > requirements.txt, 导出本地的全部依赖包到requirements.txt文件

pip freeze > requirements.txt

requirements.txt 内容格式如下

greenlet==2.0.1
playwright==1.32.1
pyee==9.0.4
typing-extensions==4.5.0

再通过download命令下载全部

pip download -r requirements.txt -d ./down

离线安装

你把前面下载的down文件下全部包,以及requirements.txt文件上传到你局域网的电脑上。
本地离线批量安装依赖包

pip install --no-index  --find-links=./ -r requirements.txt

只要你 requirements.txt 文件的包和下载的包是一一对应的,上面的安装就不会报错了。

到这一步playwright 的基本环境就已经安装完成了。

启动本地 chrome 浏览器

如果你仅仅只需要在chrome浏览器上运行你的代码,那么是不需要执行playwright install下载 chromium,firefox 和 webkit。
首先你确保在你自己本机电脑上安装了chrome浏览器,并且安装是按默认的安装路径
那么在启动的时候,只需指定channel='chrome' 就可以启动本地chrome 浏览器了。

from playwright.sync_api import sync_playwright


with sync_playwright() as p:
    browser = p.chromium.launch(channel='chrome', headless=False)
    context = browser.new_context()
    page = context.new_page()
    page.goto('http://xxx.xx.com')

如果遇到以下报错,说明你浏览器没正确安装,重新安装一次chrome浏览器,按默认的路径安装即可。

playwright._impl._api_types.Error: Chromium distribution 'chrome' is not found at C:\Users\dell\AppData\Local\Google\Chrome\Application\chrome.exe
Run "playwright install chrome"

离线安装chromium,firefox 和 webkit

如果你有安装chromium,firefox 和 webkit 这3个官方提供的内置浏览器的需求,那么接着往下看。
我们先看去哪里下载到这3个浏览器, 在终端执行以下命令

>playwright install --dry-run

它会根据你当前安装的playwright (我当前版本是1.32.1)版本,给出对应的浏览器最近匹配版本,以及下载地址

(venv) D:\demo\down_line\down>playwright install --dry-run
browser: chromium version 112.0.5615.29
  Install location:    C:\Users\dell\AppData\Local\ms-playwright\chromium-1055
  Download url:        https://playwright.azureedge.net/builds/chromium/1055/chromium-win64.zip
  Download fallback 1: https://playwright-akamai.azureedge.net/builds/chromium/1055/chromium-win64.zip
  Download fallback 2: https://playwright-verizon.azureedge.net/builds/chromium/1055/chromium-win64.zip

browser: firefox version 111.0
  Install location:    C:\Users\dell\AppData\Local\ms-playwright\firefox-1391
  Download url:        https://playwright.azureedge.net/builds/firefox/1391/firefox-win64.zip
  Download fallback 1: https://playwright-akamai.azureedge.net/builds/firefox/1391/firefox-win64.zip
  Download fallback 2: https://playwright-verizon.azureedge.net/builds/firefox/1391/firefox-win64.zip

browser: webkit version 16.4
  Install location:    C:\Users\dell\AppData\Local\ms-playwright\webkit-1811
  Download url:        https://playwright.azureedge.net/builds/webkit/1811/webkit-win64.zip
  Download fallback 1: https://playwright-akamai.azureedge.net/builds/webkit/1811/webkit-win64.zip
  Download fallback 2: https://playwright-verizon.azureedge.net/builds/webkit/1811/webkit-win64.zip

browser: ffmpeg
  Install location:    C:\Users\dell\AppData\Local\ms-playwright\ffmpeg-1008
  Download url:        https://playwright.azureedge.net/builds/ffmpeg/1008/ffmpeg-win64.zip
  Download fallback 1: https://playwright-akamai.azureedge.net/builds/ffmpeg/1008/ffmpeg-win64.zip
  Download fallback 2: https://playwright-verizon.azureedge.net/builds/ffmpeg/1008/ffmpeg-win64.zip

以 chromium 安装为例,先下载https://playwright.azureedge.net/builds/chromium/1055/chromium-win64.zip
下载后是一个chromium-win64.zip压缩包。
接着看Install location 安装位置:C:\Users\dell\AppData\Local\ms-playwright\chromium-1055 按照这个路径依次创建文件夹,把压缩包放到chromium-1055下解压即可

还有个 ffmpeg 包也需要按上面的路径正确解压,此包跟录制视频有关。
这样你本地就有了对应的chromium,firefox 和 webkit 环境。

在ms-playwright 目录下有以下四个文件

标签:playwright,builds,zip,python,win64,离线,net,chromium
From: https://www.cnblogs.com/yoyoketang/p/17272182.html

相关文章

  • 连接 AI,NebulaGraph Python ORM 项目 Carina 简化 Web 开发
    作者:Steam&Hao本文整理自社区第7期会议中13‘21″到44’11″的PythonORM的分享,视频见https://www.bilibili.com/video/BV1s8411N7Cw在做业务开发时,Nebula......
  • python_Package相关
    将自己的工作,构建为python的Package并上传至PYPI,使得其他开发者可以通过pip安装并使用。这是我一直想做的事情,最近我成功将微博数据采集项目封装并上传至PYPI。为使得后续......
  • Python自然语言处理基础实验2_基于HMM的中文分词
    实验目的了解并掌握基于隐马尔可夫模型(HMM)的分词方法,重点掌握Viterbi算法。实验要求1、对给定的语料库(或自行准备)进行统计分析,确定HMM模型的三个参数;2、根据上一步求得的......
  • Python编程必不可少的pytest测试框架
    进行编程测试重要的是为了更高效的完成功能的实现。pytest是基于unittest实现的第三方测试框架,比unittest更加的简洁、高效,并且可以完美兼容unittest的测试代码,无需对......
  • Python官方文档学习笔记
    原文:https://docs.python.org/3/tutorial/introduction.html版本:3.11.2UsingPythonasaCalculatorNumbersDivision(/)alwaysreturnsafloat.Todofloordivi......
  • [LNOI2014] LCA 树链剖分+离线处理+lca转化
    困困的开始了我的修炼树剖之旅途考虑怎么搞这个lca是说,习惯了倍增求lca,突然冒出这么一个东西还真不会搞那要么能一次性求很多个lca(?),要么把deep[lca(i,z)]这个东西转化......
  • 解决pip命令无法执行Python问题Unable to create process using...
    解决方法删除:Python37\Lib\site-packages\pip-19.1.dist-info删除:Python37\Scripts\pip*.exe(所有pip开头的)安装:python-mpipinstall--upgradepip......
  • [Python3]SM3国密算法
    fromgmsslimportsm4,sm3defsm3_hash(message:str):"""国密sm3加密:parammessage:消息值,bytes类型:return:哈希值"""msg_l......
  • Python errors All In One
    PythonerrorsAllInOneerrors❌from:can'tread/var/mail/gpiozerohttps://stackoverflow.com/questions/16069816/getting-python-error-from-cant-read-var-m......
  • Python 学习12 网络编程
    P160Socket服务端开发......