rod_helper

package
v0.45.1 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Dec 4, 2022 License: MIT Imports: 22 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func Clear

func Clear(log *logrus.Logger)

Clear 清理缓存

func GetPublicIP added in v0.37.14

func GetPublicIP(page *rod.Page, timeOut time.Duration, customDectIPSites []string) (string, error)

func HttpGetFromBrowser

func HttpGetFromBrowser(browser *rod.Browser, inputUrl string, tt time.Duration, debugMode ...bool) (string, *rod.Page, error)

func NewBrowserBase added in v0.37.3

func NewBrowserBase(log *logrus.Logger, localChromeFPath, httpProxyURL string, loadAdblock bool, preLoadUrl ...string) (*rod.Browser, error)

func NewBrowserBaseFromDocker added in v0.37.3

func NewBrowserBaseFromDocker(httpProxyURL, remoteDockerURL string, remoteAdblockPath, reMoteUserDataDir string,
	loadAdblock bool, preLoadUrl ...string) (*rod.Browser, error)

func NewBrowserEx

func NewBrowserEx(rodOptions *BrowserOptions) (*rod.Browser, error)

NewBrowserEx 创建一个 Browser 并且初始化

func NewPageNavigate

func NewPageNavigate(browser *rod.Browser, desURL string, timeOut time.Duration, debugMode ...bool) (*rod.Page, int, string, error)

func NewPageNavigateWithProxy added in v0.37.7

func NewPageNavigateWithProxy(browser *rod.Browser, proxyUrl string, desURL string, timeOut time.Duration) (*rod.Page, int, string, error)
func PageNavigate(page *rod.Page, desURL string, timeOut time.Duration) (*rod.Page, int, string, error)
func PageNavigateWithProxy(page *rod.Page, proxyUrl string, desURL string, timeOut time.Duration) (*rod.Page, int, string, error)

func ReloadBrowser

func ReloadBrowser(log *logrus.Logger)

ReloadBrowser 提前把浏览器下载好

Types

type Browser added in v0.37.3

type Browser struct {
	LbHttpUrl string // 负载均衡的 http proxy url
	LBPort    int    //负载均衡 http 端口
	// contains filtered or unexported fields
}

func NewMultiBrowser added in v0.37.3

func NewMultiBrowser(browserOptions *BrowserOptions) *Browser

NewMultiBrowser 面向与爬虫的时候使用 Browser

func (*Browser) Close added in v0.37.4

func (b *Browser) Close()

func (*Browser) GetLBBrowser added in v0.37.17

func (b *Browser) GetLBBrowser() *rod.Browser

GetLBBrowser 这里获取到的 Browser 使用的代理是负载均衡的代理

func (*Browser) NewBrowser added in v0.37.17

func (b *Browser) NewBrowser() (*rod.Browser, error)

NewBrowser 每次新建一个 Browser ,使用 HttpProxy 列表中的一个作为代理

type BrowserOptions added in v0.37.3

type BrowserOptions struct {
	Log         *logrus.Logger     // 日志
	LoadAdblock bool               // 是否加载 adblock
	Settings    *settings.Settings // 配置
	// contains filtered or unexported fields
}

func NewBrowserOptions added in v0.37.3

func NewBrowserOptions(log *logrus.Logger, loadAdblock bool, settings *settings.Settings) *BrowserOptions

func (*BrowserOptions) BrowserInstanceCount added in v0.37.3

func (r *BrowserOptions) BrowserInstanceCount() int

func (*BrowserOptions) PreLoadUrl added in v0.37.3

func (r *BrowserOptions) PreLoadUrl() string

func (*BrowserOptions) SetBrowserInstanceCount added in v0.37.3

func (r *BrowserOptions) SetBrowserInstanceCount(count int)

func (*BrowserOptions) SetPreLoadUrl added in v0.37.3

func (r *BrowserOptions) SetPreLoadUrl(url string)

func (*BrowserOptions) SetXrayPoolPort added in v0.37.3

func (r *BrowserOptions) SetXrayPoolPort(xrayPort string)

SetXrayPoolPort 19035

func (*BrowserOptions) SetXrayPoolUrl added in v0.37.3

func (r *BrowserOptions) SetXrayPoolUrl(xrayUrl string)

SetXrayPoolUrl 127.0.0.1

func (*BrowserOptions) XrayPoolPort added in v0.37.3

func (r *BrowserOptions) XrayPoolPort() string

XrayPoolPort 19035

func (*BrowserOptions) XrayPoolUrl added in v0.37.3

func (r *BrowserOptions) XrayPoolUrl() string

XrayPoolUrl 127.0.0.1

type ProxyResult added in v0.37.3

type ProxyResult struct {
	Status         string `json:"status"`
	LbPort         int    `json:"lb_port"`
	OpenResultList []struct {
		Name       string `json:"name"`
		ProtoModel string `json:"proto_model"`
		SocksPort  int    `json:"socks_port"`
		HttpPort   int    `json:"http_port"`
	} `json:"open_result_list"`
}

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL