前言
工作中,可能需要使用浏览器在同一个网站登录多个账号,或者同一个网站登录多个同样的账号。
惯例是下载多个浏览器(Chrome、Edge、Firefox、360)等,每个浏览器登录一个账号。(任务栏五颜六色的。)
能不能用一个浏览器解决同一个平台同账号/多账号登录问题?
其中关键就在于浏览器的用户数据写到哪去了
关键参数:--user-data-dir
所以只需启动时指定一下浏览器的启动参数即可。
目录
一、基本环境准备
操作系统:Windows 10 Pro
浏览器:Microsoft Edge
二、测试
右键浏览器快捷方式,在目标中添加,注意空格。
--user-data-dir="F:\up_edge"
然后双击此快捷方式打开,即可获得一个“全新的edge ”。
三、脚本
按照上文的情况下,理论上可以开好多edge进程,但是每次手动改都很麻烦,所以写个 bat 脚本实现一下。
以下几点需要注意:
- set edgeExec="" 需要修改为你的edge安装目录,是目录,不是文件。
- start msedge.exe --user-data-dir="F:\EdgeCache\ep_!RANDOM!" F:\EdgeCache 需要修改为你自己想要将用户数据文件存放的位置
- 文件名:xxx.bat
@echo off
rem Usage: Double-clicking xxx.bat —— will open a browser process(Cookies are not shared)
rem xxx.bat 3 —— will open three browser process(Cookies are not shared)
setlocal enabledelayedexpansion
set /a count=1
if not "%1"=="" (
set /a count=%1
)
rem Set edge execute directory.(!!!Need to modify)
set edgeExec="C:\Program Files (x86)\Microsoft\Edge\Application"
rem into exec dir.
cd %edgeExec%
for /l %%i in (1, 1, %count%) do (
rem Start the edge process and specify a different user directory.
rem "F:\EdgeCache"(!!!Need to modify)
start msedge.exe --user-data-dir="F:\EdgeCache\ep_!RANDOM!"
)
endlocal
rem exit
exit
脚本使用方式1:双击xxx.bat,可以开启1个单独的edge进程(cookies不共享)。
脚本使用方式2:
在脚本所在目录进入 cmd,执行
xxx.bat 3
可开启3个单独的edge进程。(cookies不共享)
用户数据文件如下所示:
通过以上的方式即可实现多账号同平台登录或单账号同平台登录(平台支持的话)。
?为什么脚本中不用中文注释:实在搞不懂bat的编码格式,一直乱码:(
四、注意事项
1. 开启多个浏览器进程可能会导致电脑资源占用率过高,导致卡顿(不过用不同的浏览器貌似也会这样),众所周知浏览器是资源开销大户。
2. 用户数据文件不都存在一个文件夹中,可能导致数据丢失。(在浏览器上的操作)
3. 长期使用可能需要手动清理用户数据文件夹,否则可能导致磁盘空间占用过大。
4. 在同一平台登录时,使用多个相同的edge图标(任务栏图标),可能容易混淆登录的账号是什么。
结语
总之,这个需求的应用场景是什么呢?
我个人的原因是“不想下载太多的浏览器应用,同一个平台登录账号,只做测试用(比如登录一个管理员用户,给普通用户授权,普通用户不想退出的情况下),即使用户数据丢了也无所谓,再开一个新的浏览器就解决了。”
ps:chrome浏览器,也可以实现,方式差不多。请百度
如果你也有这个需求,可以尝试一下,有问题欢迎留言。
希望可以帮到你!