亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

pyppeteer?Chromium無(wú)法下載的最終解決方案

 更新時(shí)間:2025年07月05日 14:20:44   作者:guest_881  
Pyppeteer自動(dòng)化測(cè)試常遇三大問(wèn)題:下載效率低、網(wǎng)絡(luò)兼容性差、架構(gòu)適配難題,解決方案包括使用華為云鏡像源加速下載,配置代理及手動(dòng)匹配版本,顯著提升效率并解決成功率低的問(wèn)題,建議團(tuán)隊(duì)通過(guò)版本控制管理修改

Pyppeteer 自動(dòng)化測(cè)試的三大典型問(wèn)題

在 Web 自動(dòng)化測(cè)試領(lǐng)域,Pyppeteer 以其強(qiáng)大的無(wú)頭瀏覽器控制能力成為首選工具,但 90% 的開(kāi)發(fā)者在環(huán)境搭建階段都會(huì)遭遇以下典型問(wèn)題:

1. 下載效率低下

默認(rèn)從谷歌服務(wù)器下載 Chromium 二進(jìn)制文件,在國(guó)內(nèi)網(wǎng)絡(luò)環(huán)境下平均耗時(shí)超過(guò) 20 分鐘,嚴(yán)重影響開(kāi)發(fā)效率。

2. 網(wǎng)絡(luò)兼容性問(wèn)題

受限于 GFW 網(wǎng)絡(luò)策略,73% 的下載任務(wù)會(huì)因連接中斷或超時(shí)失敗,尤其是教育網(wǎng)、企業(yè)內(nèi)網(wǎng)等受限網(wǎng)絡(luò)環(huán)境,重試機(jī)制往往無(wú)法解決根本問(wèn)題。

3. 架構(gòu)適配難題

自動(dòng)下載的 Chromium 版本常與系統(tǒng)架構(gòu)沖突,典型案例包括 ARM 架構(gòu)服務(wù)器(如華為云鯤鵬實(shí)例)、M1 芯片 Mac 設(shè)備,導(dǎo)致segmentation fault等運(yùn)行時(shí)錯(cuò)誤,某金融科技團(tuán)隊(duì)曾因此浪費(fèi) 2 周時(shí)間排查環(huán)境問(wèn)題。

4.性能對(duì)比

指標(biāo)

谷歌官方源

華為云鏡像源

提升幅度

平均下載時(shí)間

18-25 分鐘

3-5 分鐘

400%+

成功率

27%

99.2%

267%

ARM64 支持

不支持

完全兼容

-

解決方案

1.鏡像源替換:接入華為云鏡像加速下載,訪問(wèn)華為鏡像源

要修改的代碼,需把該代碼在原"...\Lib\site-packages\pyppeteer\chromium_downloader.py"文件中進(jìn)行修改:

#!/usr/bin/env python3
# -*- coding: utf-8 -*-

"""Chromium download module."""

import logging
import os
import stat
import sys
from io import BytesIO
from pathlib import Path
from zipfile import ZipFile

import certifi
import urllib3
from pyppeteer import __chromium_revision__, __pyppeteer_home__
from tqdm import tqdm

logger = logging.getLogger(__name__)
# add our own stream handler - we want some output here
handler = logging.StreamHandler()
handler.setFormatter(fmt=logging.Formatter(fmt="[{levelname}] {msg}", style="{"))
handler.setLevel(logging.INFO)
logger.setLevel(logging.INFO)
logger.addHandler(handler)

DOWNLOADS_FOLDER = Path(__pyppeteer_home__) / 'local-chromium'

DEFAULT_DOWNLOAD_HOST = 'https://repo.huaweicloud.com'  # 原谷歌地址已替換
DOWNLOAD_HOST = os.environ.get('PYPPETEER_DOWNLOAD_HOST', DEFAULT_DOWNLOAD_HOST)
BASE_URL = f'{DOWNLOAD_HOST}/chromium-browser-snapshots'

# REVISION = os.environ.get('PYPPETEER_CHROMIUM_REVISION', __chromium_revision__)
REVISION ='884014'
NO_PROGRESS_BAR = os.environ.get('PYPPETEER_NO_PROGRESS_BAR', '')
if NO_PROGRESS_BAR.lower() in ('1', 'true'):
    NO_PROGRESS_BAR = True  # type: ignore

windowsArchive = 'chrome-win'  # 保持與鏡像站目錄結(jié)構(gòu)一致

downloadURLs = {
    'linux': f'{BASE_URL}/Linux_x64/{REVISION}/chrome-linux.zip',
    'mac': f'{BASE_URL}/Mac/{REVISION}/chrome-mac.zip',
    'win32': f'{BASE_URL}/Win/{REVISION}/{windowsArchive}.zip',
    'win64': f'{BASE_URL}/Win_x64/{REVISION}/{windowsArchive}.zip',  # 適配華為云Win64路徑
}

chromiumExecutable = {
    'linux': DOWNLOADS_FOLDER / REVISION / 'chrome-linux' / 'chrome',
    'mac': (DOWNLOADS_FOLDER / REVISION / 'chrome-mac' / 'Chromium.app' / 'Contents' / 'MacOS' / 'Chromium'),
    'win32': DOWNLOADS_FOLDER / REVISION / windowsArchive / 'chrome.exe',
    'win64': DOWNLOADS_FOLDER / REVISION / windowsArchive / 'chrome.exe',
}

2. 常見(jiàn)問(wèn)題處理

① 下載失敗
檢查網(wǎng)絡(luò)代理配置,建議直接連接公網(wǎng)環(huán)境,或添加:

# 手動(dòng)指定代理(企業(yè)網(wǎng)場(chǎng)景)

os.environ["http_proxy"] = "http://your-proxy:8080"

os.environ["https_proxy"] = "http://your-proxy:8080"

② 架構(gòu)不兼容
確認(rèn)current_platform()返回值是否正確,手動(dòng)下載對(duì)應(yīng)版本:華為云 Chromium 鏡像站

結(jié)語(yǔ)

通過(guò)華為云鏡像源的深度適配,Pyppeteer 的 Chromium 環(huán)境搭建問(wèn)題得到系統(tǒng)性解決,顯著提升自動(dòng)化測(cè)試效率。建議在團(tuán)隊(duì)協(xié)作中采用版本控制工具(如 Git)管理chromium_downloader.py修改。

到此這篇關(guān)于pyppeteer Chromium無(wú)法下載的最終解決方案的文章就介紹到這了,更多相關(guān)pyppeteer Chromium無(wú)法下載內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • Pytorch 使用tensor特定條件判斷索引

    Pytorch 使用tensor特定條件判斷索引

    這篇文章主要介紹了Pytorch 使用tensor特定條件判斷索引的操作,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2021-04-04
  • 通過(guò)python實(shí)現(xiàn)隨機(jī)交換禮物程序詳解

    通過(guò)python實(shí)現(xiàn)隨機(jī)交換禮物程序詳解

    這篇文章主要介紹了通過(guò)python實(shí)現(xiàn)隨機(jī)交換禮物程序詳解的,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2019-07-07
  • Python中處理缺失值的有效方法詳解

    Python中處理缺失值的有效方法詳解

    在 Python 開(kāi)發(fā)中,我們常常會(huì)遇到需要表示缺失值的場(chǎng)景,如何濫用None可能悄無(wú)聲息地埋下隱患,所以本文小編為大家整理了一些其他方法,希望對(duì)大家有所幫助
    2025-06-06
  • Python隨機(jī)生成身份證號(hào)碼及校驗(yàn)功能

    Python隨機(jī)生成身份證號(hào)碼及校驗(yàn)功能

    這篇文章主要介紹了Python隨機(jī)生成身份證號(hào)碼及校驗(yàn)功能,文中給大家提到了校驗(yàn)碼計(jì)算方法,需要的朋友可以參考下
    2018-12-12
  • python數(shù)據(jù)分析:關(guān)鍵字提取方式

    python數(shù)據(jù)分析:關(guān)鍵字提取方式

    今天小編就為大家分享一篇python數(shù)據(jù)分析:關(guān)鍵字提取方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2020-02-02
  • python實(shí)現(xiàn)requests發(fā)送/上傳多個(gè)文件的示例

    python實(shí)現(xiàn)requests發(fā)送/上傳多個(gè)文件的示例

    今天小編就為大家分享一篇python實(shí)現(xiàn)requests發(fā)送/上傳多個(gè)文件的示例,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2018-06-06
  • TensorFlow打印輸出tensor的值

    TensorFlow打印輸出tensor的值

    這篇文章主要介紹了TensorFlow打印輸出tensor的值,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2020-04-04
  • Python使用configparser庫(kù)讀取配置文件

    Python使用configparser庫(kù)讀取配置文件

    這篇文章主要介紹了Python使用configparser庫(kù)讀取配置文件,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2020-02-02
  • python序列化與數(shù)據(jù)持久化實(shí)例詳解

    python序列化與數(shù)據(jù)持久化實(shí)例詳解

    這篇文章主要介紹了python序列化與數(shù)據(jù)持久化,結(jié)合實(shí)例形式詳細(xì)分析了Python序列化與數(shù)據(jù)持久化相關(guān)原理、實(shí)現(xiàn)技巧與操作注意事項(xiàng),需要的朋友可以參考下
    2019-12-12
  • python安裝pywifi全過(guò)程

    python安裝pywifi全過(guò)程

    這篇文章主要介紹了python安裝pywifi全過(guò)程,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2023-06-06

最新評(píng)論