我想使用 modheader 扩展,但我遇到了同样的问题,我解决了它。
第 1 步:获取您的 chrome 扩展 (.crx) 文件
就我而言,我找到了 modheader 文档,并从页面获取下载链接。
https://docs.modheader.com/advanced/selenium-webdriver
将 .crx 文件下载到您的项目中。
the .crx download page
下载链接
https://github.com/modheader/modheader_selenium/raw/main/chrome-modheader/modheader.crx
注意:Web 浏览器可能会根据策略阻止下载,使用“wget”命令获取
文件。
block by browser
wget the file
如果你想获得另一个扩展,使用下面的 CRX Extractor/Downloader 可以帮助你。
CRX Extracti link
CRX Extracti/Downloader webpage
第二步:使用代码加载扩展
package main
import (
"fmt"
"os"
"github.com/tebeka/selenium"
"github.com/tebeka/selenium/chrome"
)
const (
port = 8080
)
func main() {
opts := []selenium.ServiceOption{
// Enable fake XWindow session.
// selenium.StartFrameBuffer(),
selenium.Output(os.Stderr), // Output debug information to STDERR
}
_, err := selenium.NewChromeDriverService("../your_driver_path/chromedriver.exe", port, opts...)
if err != nil {
panic(err)
}
caps := selenium.Capabilities{"browserName": "chrome"}
var cap_ext chrome.Capabilities
// add your extention by crx file
cap_ext.AddExtension("./modheader.crx")
caps.AddChrome(cap_ext)
wd, err := selenium.NewRemote(caps, fmt.Sprintf("http://127.0.0.1:%d/wd/hub", port))
// Using api to setting modheader
// add header
wd.Get("https://webdriver.modheader.com/add?test=ModHeader%20Test")
}
第 3 步:设置扩展名
Modheader 扩展提供 api 来设置。
例子 :
wd.Get("https://webdriver.modheader.com/add?test=ModHeader%20Test")
第 4 步:结果
Loading and setting extention successful
我希望我能提供帮助。祝你好运。