目錄
- 1. 背景介紹
- 2. 搭建過程
- 3. 補充
1. 背景介紹
背景:想要在 Windows 中復現 browser-use WebUI pickle反序列化漏洞,該漏洞在 v1.7 版本中已經修復,所以需要搭建 小于 1.7 版本的環境,我這里搭建的是 1.4 版本。
項目地址:https://github.com/browser-use/web-ui.git
2. 搭建過程
新建一個目錄:WebUI
在這個目錄中打開cmd,克隆倉庫:git clone https://github.com/browser-use/web-ui.git
進入安裝目錄:cd web-ui
切換到1.4版本:git checkout v1.4
一定要切換版本,最新版已經修復了,在webui的目錄下執行命令:git describe --tags
這個命令會輸出你當前所在的 版本 tag(如果在 tag 上),或顯示你基于哪個 tag 派生出來的。
官方建議使用 uv 來管理 Python 環境。
安裝 uv:pip install uv
使用 uv:uv venv --python 3.11
激活虛擬環境:.venv\Scripts\activate
在安裝依賴前需要做一些改動。按照直接 clone 下來的 requirements ,最后啟動的時候會一直報錯錯:TypeError: argument of type 'bool' is not iterable
反復試了很多次,最后自己摸索出來的解決辦法是修改 requirements.txt 文件,將 gradio 的版本改為 5.23.1:gradio==5.23.1
(在虛擬環境中)安裝python依賴:uv pip install -r requirements.txt
在 Windows 的 cmd 命令行中,進入 Python 虛擬環境后的標志通常是在命令行提示符前面看到虛擬環境的名稱。前面的 (web-ui)
表示你當前已經激活了名為 web-ui
的虛擬環境(名稱取決于你創建虛擬環境時使用的名字),后是你當前所在的目錄路徑:
安裝瀏覽器運行環境:playwright install
(安裝這個環境的話,使用 web-ui 的時候不選擇用自己的瀏覽器,就會啟動現在安裝的瀏覽器環境。如果想用自己的瀏覽器,就不用安裝這個,后面再修改一下配置文件即可。)
(在虛擬環境中)配置環境:copy .env.example .env
配置文件 .env
,可以在里面修改瀏覽器的地址,設置各種 api 等。
(在虛擬環境中)啟用 WebUI:python webui.py --ip 192.168.119.1 --port 7788
在瀏覽器中訪問:http://192.168.119.1:7788
3. 補充
如果前面沒有安裝瀏覽器運行環境,想使用自己的瀏覽器,需要做以下更改。
在 .env 文件中修改:
CHROME_PATH="C:\Program Files\Google\Chrome\Application\chrome.exe"
CHROME_USER_DATA="C:\Users\你的username\AppData\Local\Google\Chrome\User Data"CHROME_PERSISTENT_SESSION=true
其中:
CHROME_PATH 是瀏覽器的執行文件的路徑,需要自己做修改,不要直接復制。
CHROME_USER_DATA 是瀏覽器的數據目錄,需要自己做修改,不要直接復制。
CHROME_PERSISTENT_SESSION 是設置讓瀏覽器一直打開,可選項。
接下來:
- 關閉所有 Chrome 窗口
- 在非 Chrome 瀏覽器(如 Firefox 或 Edge)中打開 WebUI (192.168.119.1:7788)。這一點很重要,因為持久性瀏覽器上下文將在運行代理時使用 Chrome 數據。
- 選中瀏覽器設置中的“使用自己的瀏覽器”選項。