Skip to main content

crawlerx

实例名实例描述
AllDomainScan(crawlerx.scanRangeLevel) 0
ExtremeRepeatLevel(crawlerx.repeatLevel) 4
HighRepeatLevel(crawlerx.repeatLevel) 3
LowRepeatLevel(crawlerx.repeatLevel) 1
MediumRepeatLevel(crawlerx.repeatLevel) 2
SubMenuScan(crawlerx.scanRangeLevel) 1
UnLimitRepeat(crawlerx.repeatLevel) 0
UnlimitedDomainScan(crawlerx.scanRangeLevel) 2
函数名函数描述/介绍
crawlerx.PageScreenShot
crawlerx.StartCrawlerStartCrawler 开启一个无头浏览器模拟点击爬虫任务 第一个参数为目标url,后面可以添加零个或多个请求选项,用于对此次请求进行配置 返回值包括channel和错误,从channel中获取爬虫结果 Examples: ``` targetUrl = "http://testph...
crawlerx.aiInputInfo
crawlerx.aiInputUrl
crawlerx.blacklistblacklist 是一个请求选项 用于设置不会被访问的url链接包含的关键词 Examples: ``` targetUrl = "http://testphp.vulnweb.com/" ch, err = crawlerx.StartCrawler(targetUrl,...
crawlerx.browserInfobrowserInfo 是一个请求选项 用于配制浏览器参数 Examples: ``` targetUrl = "http://testphp.vulnweb.com/" browserInfo = { "ws_address":"",...
crawlerx.concurrentconcurrent 是一个请求选项 用于设置浏览器同时打开的最大页面数量 Examples: ``` targetUrl = "http://testphp.vulnweb.com/" ch, err = crawlerx.StartCrawler(targetUrl, c...
crawlerx.cookiescookies 是一个请求选项 用于设置爬虫发送请求时的cookie Examples: ``` targetUrl = "http://testphp.vulnweb.com/" cookieMap = make(map[string]string, 0) cookieM...
crawlerx.evalJs
crawlerx.extraWaitLoadTimeextraWaitLoadTime 是一个请求选项 用于设置页面加载的额外页面等待时间 防止加载vue网站页面时页面状态为加载完成 实际仍在加载中的情况 Examples: ``` targetUrl = "http://testphp.vulnweb.com/" ch, ...
crawlerx.fileInputfileInput 是一个请求选项 用于设置页面遇到input submit时默认上传文件 Examples: ``` targetUrl = "http://testphp.vulnweb.com/" fileMap = make(map[string]string, 0)...
crawlerx.formFillformFill 是一个请求选项 用于设置页面输入框填写内容 Examples: ``` targetUrl = "http://testphp.vulnweb.com/" inputMap = make(map[string]string, 0) inputMap[&#3...
crawlerx.fromPlugin
crawlerx.fullTimeoutfullTimeout 是一个请求选项 用于设置爬虫任务总超时时间 Examples: ``` targetUrl = "http://testphp.vulnweb.com/" ch, err = crawlerx.StartCrawler(targetUrl, crawl...
crawlerx.headersheaders 是一个请求选项 用于设置爬虫发送请求时的headers Examples: ``` targetUrl = "http://testphp.vulnweb.com/" headerMap = make(map[string]string, 0) header...
crawlerx.ignoreQueryNameignoreQueryName 是一个请求选项 用于设置url中的query名称去重时忽略 Examples: ``` targetUrl = "http://testphp.vulnweb.com/" ch, err = crawlerx.StartCrawler(targ...
crawlerx.invalidSuffix
crawlerx.jsResultSend
crawlerx.leakless
crawlerx.localStorage
crawlerx.maxDepthmaxDepth 是一个请求选项 用于设置网站最大爬取深度 Examples: ``` targetUrl = "http://testphp.vulnweb.com/" ch, err = crawlerx.StartCrawler(targetUrl, crawlerx....
crawlerx.maxUrlmaxUrl 是一个请求选项 用于设置最大爬取url数量 Examples: ``` targetUrl = "http://testphp.vulnweb.com/" ch, err = crawlerx.StartCrawler(targetUrl, crawlerx.m...
crawlerx.pageTimeoutpageTimeout 是一个请求选项 用于设置单个页面超时时间 Examples: ``` targetUrl = "http://testphp.vulnweb.com/" ch, err = crawlerx.StartCrawler(targetUrl, crawle...
crawlerx.rawCookierawCookie 是一个请求选项 用于设置爬虫发送请求时的cookie Examples: `` targetUrl = "http://testphp.vulnweb.com/" cookie =Apache=5651982500959.057.1731310579...
crawlerx.rawHeadersrawHeaders 是一个请求选项 用于设置爬虫发送请求时的headers Examples: `` targetUrl = "http://testphp.vulnweb.com/" headers =Accept: text/html,application/xh...
crawlerx.response
crawlerx.runtimeID
crawlerx.runtimeId
crawlerx.saveToDB
crawlerx.scanRangeLevelscanRangeLevel 是一个请求选项 用于设置爬虫扫描范围 Examples: ``` targetUrl = "http://testphp.vulnweb.com/" scanRangeOpt = crawlerx.scanRangeLevel(crawlerx....
crawlerx.scanRepeatLevelscanRepeatLevel 是一个请求选项 用于设置爬虫去重强度 Examples: ``` targetUrl = "http://testphp.vulnweb.com/" scanRepeatOpt = crawlerx.scanRepeatLevel(crawle...
crawlerx.sensitiveWordssensitiveWords 是一个请求选项 用于设置页面按钮点击时的敏感词 Examples: ``` targetUrl = "http://testphp.vulnweb.com/" sensitiveWords = "logout,delete" c...
crawlerx.sessionStorage
crawlerx.sourceType
crawlerx.stealth
crawlerx.urlCheckurlCheck 是一个请求选项 用于设置是否在爬虫前进行url存活检测 Examples: ``` targetUrl = "http://testphp.vulnweb.com/" ch, err = crawlerx.StartCrawler(targetUrl, cr...
crawlerx.vue
crawlerx.whitelistwhitelist 是一个请求选项 用于设置只会被访问的url链接中包含的关键词 Examples: ``` targetUrl = "http://testphp.vulnweb.com/" ch, err = crawlerx.StartCrawler(targetUrl...

函数定义#

PageScreenShot#

详细描述#

定义#

PageScreenShot(targetUrl string, opts ...ConfigOpt) (code string, err error)

参数#

参数名参数类型参数解释
targetUrlstring
opts...ConfigOpt

返回值#

返回值(顺序)返回值类型返回值解释
codestring
errerror

StartCrawler#

详细描述#

StartCrawler 开启一个无头浏览器模拟点击爬虫任务 第一个参数为目标url,后面可以添加零个或多个请求选项,用于对此次请求进行配置 返回值包括channel和错误,从channel中获取爬虫结果

Examples:


    targetUrl = "http://testphp.vulnweb.com/"    ch, err = crawlerx.StartCrawler(targetUrl, crawlerx.pageTimeout(30), crawlerx.concurrent(3))    for item = range ch {        yakit.Info(item.Method() + " " + item.Url())    }

定义#

StartCrawler(url string, opts ...ConfigOpt) (chan ReqInfo, error)

参数#

参数名参数类型参数解释
urlstring
opts...ConfigOpt

返回值#

返回值(顺序)返回值类型返回值解释
r1chan ReqInfo
r2error

aiInputInfo#

详细描述#

定义#

aiInputInfo(info string) ConfigOpt

参数#

参数名参数类型参数解释
infostring

返回值#

返回值(顺序)返回值类型返回值解释
r1ConfigOpt

aiInputUrl#

详细描述#

定义#

aiInputUrl(url string) ConfigOpt

参数#

参数名参数类型参数解释
urlstring

返回值#

返回值(顺序)返回值类型返回值解释
r1ConfigOpt

blacklist#

详细描述#

blacklist 是一个请求选项 用于设置不会被访问的url链接包含的关键词

Examples:


    targetUrl = "http://testphp.vulnweb.com/"    ch, err = crawlerx.StartCrawler(targetUrl, crawlerx.blacklist("logout", "exit", "delete")) // 设置遇到url中包含logout、exit和delete时不会访问    ...

定义#

blacklist(keywords ...string) ConfigOpt

参数#

参数名参数类型参数解释
keywords...string

返回值#

返回值(顺序)返回值类型返回值解释
r1ConfigOpt

browserInfo#

详细描述#

browserInfo 是一个请求选项 用于配制浏览器参数

Examples:


    targetUrl = "http://testphp.vulnweb.com/"    browserInfo = {       "ws_address":"",     // 浏览器websocket url       "exe_path":"",       // 浏览器可执行路径       "proxy_address":"",  // 代理地址       "proxy_username":"", // 代理用户名       "proxy_password":"", // 代理密码    }    browserInfoOpt = crawlerx.browserInfo(json.dumps(browserInfo))    ch, err = crawlerx.StartCrawler(targetUrl, browserInfoOpt)    ...

定义#

browserInfo(data string) ConfigOpt

参数#

参数名参数类型参数解释
datastring

返回值#

返回值(顺序)返回值类型返回值解释
r1ConfigOpt

concurrent#

详细描述#

concurrent 是一个请求选项 用于设置浏览器同时打开的最大页面数量

Examples:


    targetUrl = "http://testphp.vulnweb.com/"    ch, err = crawlerx.StartCrawler(targetUrl, crawlerx.concurrent(3)) // 设置浏览器同时打开的最大页面数量为3    ...

定义#

concurrent(concurrent int) ConfigOpt

参数#

参数名参数类型参数解释
concurrentint

返回值#

返回值(顺序)返回值类型返回值解释
r1ConfigOpt

cookies#

详细描述#

cookies 是一个请求选项 用于设置爬虫发送请求时的cookie

Examples:


    targetUrl = "http://testphp.vulnweb.com/"    cookieMap = make(map[string]string, 0)    cookieMap["Apache"] = "5651982500959.057.1731310579958"    cookieMap["ULV"] = "1731310579971:11:1:1:5651982500959.057.1731310579958:1727418057693"    ch, err = crawlerx.StartCrawler(targetUrl, crawlerx.cookies("testphp.vulnweb.com", cookieMap)) // cookie字典形式输入    ...

定义#

cookies(domain string, cookiesInfo map[string]string) ConfigOpt

参数#

参数名参数类型参数解释
domainstring
cookiesInfomap[string]string

返回值#

返回值(顺序)返回值类型返回值解释
r1ConfigOpt

evalJs#

详细描述#

定义#

evalJs(target string, evalJs string) ConfigOpt

参数#

参数名参数类型参数解释
targetstring
evalJsstring

返回值#

返回值(顺序)返回值类型返回值解释
r1ConfigOpt

extraWaitLoadTime#

详细描述#

extraWaitLoadTime 是一个请求选项 用于设置页面加载的额外页面等待时间

防止加载vue网站页面时页面状态为加载完成 实际仍在加载中的情况

Examples:


    targetUrl = "http://testphp.vulnweb.com/"    ch, err = crawlerx.StartCrawler(targetUrl, crawlerx.extraWaitLoadTime(1000)) // 设置页面加载的额外页面等待时间为1000毫秒    ...

定义#

extraWaitLoadTime(extraWaitLoadTime int) ConfigOpt

参数#

参数名参数类型参数解释
extraWaitLoadTimeint

返回值#

返回值(顺序)返回值类型返回值解释
r1ConfigOpt

fileInput#

详细描述#

fileInput 是一个请求选项 用于设置页面遇到input submit时默认上传文件

Examples:


    targetUrl = "http://testphp.vulnweb.com/"    fileMap = make(map[string]string, 0)    fileMap["default"] = "/path/to/file/test.txt"    ch, err = crawlerx.StartCrawler(targetUrl, crawlerx.fileInput(fileMap)) // 设置遇到输入框元素中存在对应关键词时输入对应内容 默认输入test    ...

定义#

fileInput(fileInput map[string]string) ConfigOpt

参数#

参数名参数类型参数解释
fileInputmap[string]string

返回值#

返回值(顺序)返回值类型返回值解释
r1ConfigOpt

formFill#

详细描述#

formFill 是一个请求选项 用于设置页面输入框填写内容

Examples:


    targetUrl = "http://testphp.vulnweb.com/"    inputMap = make(map[string]string, 0)    inputMap["username"] = "admin"    inputMap["password"] = "123321"    ch, err = crawlerx.StartCrawler(targetUrl, crawlerx.formFill(inputMap)) // 设置遇到输入框元素中存在对应关键词时输入对应内容 默认输入test    ...

定义#

formFill(formFills map[string]string) ConfigOpt

参数#

参数名参数类型参数解释
formFillsmap[string]string

返回值#

返回值(顺序)返回值类型返回值解释
r1ConfigOpt

fromPlugin#

详细描述#

定义#

fromPlugin(fromPlugin string) ConfigOpt

参数#

参数名参数类型参数解释
fromPluginstring

返回值#

返回值(顺序)返回值类型返回值解释
r1ConfigOpt

fullTimeout#

详细描述#

fullTimeout 是一个请求选项 用于设置爬虫任务总超时时间

Examples:


    targetUrl = "http://testphp.vulnweb.com/"    ch, err = crawlerx.StartCrawler(targetUrl, crawlerx.fullTimeout(1800)) // 设置爬虫任务总超时时间为1800秒    ...

定义#

fullTimeout(timeout int) ConfigOpt

参数#

参数名参数类型参数解释
timeoutint

返回值#

返回值(顺序)返回值类型返回值解释
r1ConfigOpt

headers#

详细描述#

headers 是一个请求选项 用于设置爬虫发送请求时的headers

Examples:


    targetUrl = "http://testphp.vulnweb.com/"    headerMap = make(map[string]string, 0)    headerMap["Connection"] = "keep-alive"    ch, err = crawlerx.StartCrawler(targetUrl, crawlerx.headers(headerMap)) // header以字典形式输入    ...

定义#

headers(headersInfo map[string]string) ConfigOpt

参数#

参数名参数类型参数解释
headersInfomap[string]string

返回值#

返回值(顺序)返回值类型返回值解释
r1ConfigOpt

ignoreQueryName#

详细描述#

ignoreQueryName 是一个请求选项 用于设置url中的query名称去重时忽略

Examples:


    targetUrl = "http://testphp.vulnweb.com/"    ch, err = crawlerx.StartCrawler(targetUrl, crawlerx.ignoreQueryName("sid", "tid")) // 设置检测url是否重复时无视sid和tid这两个query    ...

定义#

ignoreQueryName(names ...string) ConfigOpt

参数#

参数名参数类型参数解释
names...string

返回值#

返回值(顺序)返回值类型返回值解释
r1ConfigOpt

invalidSuffix#

详细描述#

定义#

invalidSuffix(suffix []string) ConfigOpt

参数#

参数名参数类型参数解释
suffix[]string

返回值#

返回值(顺序)返回值类型返回值解释
r1ConfigOpt

jsResultSend#

详细描述#

定义#

jsResultSend(storage func(s string)) ConfigOpt

参数#

参数名参数类型参数解释
storagefunc(s string)

返回值#

返回值(顺序)返回值类型返回值解释
r1ConfigOpt

leakless#

详细描述#

定义#

leakless(leakless string) ConfigOpt

参数#

参数名参数类型参数解释
leaklessstring

返回值#

返回值(顺序)返回值类型返回值解释
r1ConfigOpt

localStorage#

详细描述#

定义#

localStorage(storage map[string]string) ConfigOpt

参数#

参数名参数类型参数解释
storagemap[string]string

返回值#

返回值(顺序)返回值类型返回值解释
r1ConfigOpt

maxDepth#

详细描述#

maxDepth 是一个请求选项 用于设置网站最大爬取深度

Examples:


    targetUrl = "http://testphp.vulnweb.com/"    ch, err = crawlerx.StartCrawler(targetUrl, crawlerx.maxDepth(3)) // 设置网站最大爬取深度为3    ...

定义#

maxDepth(depth int) ConfigOpt

参数#

参数名参数类型参数解释
depthint

返回值#

返回值(顺序)返回值类型返回值解释
r1ConfigOpt

maxUrl#

详细描述#

maxUrl 是一个请求选项 用于设置最大爬取url数量

Examples:


    targetUrl = "http://testphp.vulnweb.com/"    ch, err = crawlerx.StartCrawler(targetUrl, crawlerx.maxUrl(100)) // 设置最大爬取url数量为100    ...

定义#

maxUrl(maxUrl int) ConfigOpt

参数#

参数名参数类型参数解释
maxUrlint

返回值#

返回值(顺序)返回值类型返回值解释
r1ConfigOpt

pageTimeout#

详细描述#

pageTimeout 是一个请求选项 用于设置单个页面超时时间

Examples:


    targetUrl = "http://testphp.vulnweb.com/"    ch, err = crawlerx.StartCrawler(targetUrl, crawlerx.pageTimeout(30)) // 设置单个页面超时时间为30秒    ...

定义#

pageTimeout(timeout int) ConfigOpt

参数#

参数名参数类型参数解释
timeoutint

返回值#

返回值(顺序)返回值类型返回值解释
r1ConfigOpt

rawCookie#

详细描述#

rawCookie 是一个请求选项 用于设置爬虫发送请求时的cookie

Examples:


    targetUrl = "http://testphp.vulnweb.com/"    cookie = `Apache=5651982500959.057.1731310579958; ULV=1731310579971:11:1:1:5651982500959.057.1731310579958:1727418057693; ALF=1735783078`    ch, err = crawlerx.StartCrawler(targetUrl, crawlerx.rawCookie("testphp.vulnweb.com", cookie)) // 原生cookie输入    ...

定义#

rawCookie(domain string, cookieInfo string) ConfigOpt

参数#

参数名参数类型参数解释
domainstring
cookieInfostring

返回值#

返回值(顺序)返回值类型返回值解释
r1ConfigOpt

rawHeaders#

详细描述#

rawHeaders 是一个请求选项 用于设置爬虫发送请求时的headers

Examples:


    targetUrl = "http://testphp.vulnweb.com/"    headers = `Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7    Accept-Encoding: gzip, deflate    Accept-Language: zh-CN,zh;q=0.9,en;q=0.8,ja;q=0.7,zh-TW;q=0.6    Cache-Control: max-age=0    Connection: keep-alive    Host: testphp.vulnweb.com    Upgrade-Insecure-Requests: 1    User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/131.0.0.0 Safari/537.36 `
    ch, err = crawlerx.StartCrawler(targetUrl, crawlerx.rawHeaders(headers)) // 原生headers输入    ...

定义#

rawHeaders(headerInfo string) ConfigOpt

参数#

参数名参数类型参数解释
headerInfostring

返回值#

返回值(顺序)返回值类型返回值解释
r1ConfigOpt

response#

详细描述#

定义#

response(targetUrl string, response string) ConfigOpt

参数#

参数名参数类型参数解释
targetUrlstring
responsestring

返回值#

返回值(顺序)返回值类型返回值解释
r1ConfigOpt

runtimeID#

详细描述#

定义#

runtimeID(id string) ConfigOpt

参数#

参数名参数类型参数解释
idstring

返回值#

返回值(顺序)返回值类型返回值解释
r1ConfigOpt

runtimeId#

详细描述#

定义#

runtimeId(id string) ConfigOpt

参数#

参数名参数类型参数解释
idstring

返回值#

返回值(顺序)返回值类型返回值解释
r1ConfigOpt

saveToDB#

详细描述#

定义#

saveToDB(b bool) ConfigOpt

参数#

参数名参数类型参数解释
bbool

返回值#

返回值(顺序)返回值类型返回值解释
r1ConfigOpt

scanRangeLevel#

详细描述#

scanRangeLevel 是一个请求选项 用于设置爬虫扫描范围

Examples:


    targetUrl = "http://testphp.vulnweb.com/"    scanRangeOpt = crawlerx.scanRangeLevel(crawlerx.AllDomainScan)  // 主域名扫描    // scanRangeOpt = crawlerx.scanRangeLevel(crawlerx.SubMenuScan) // 子域名扫描    // scanRangeOpt = crawlerx.scanRangeLevel(crawlerx.UnlimitedDomainScan) // 无限制扫描    ch, err = crawlerx.StartCrawler(targetUrl, scanRangeOpt)    ...

定义#

scanRangeLevel(scanRange scanRangeLevel) ConfigOpt

参数#

参数名参数类型参数解释
scanRangescanRangeLevel

返回值#

返回值(顺序)返回值类型返回值解释
r1ConfigOpt

scanRepeatLevel#

详细描述#

scanRepeatLevel 是一个请求选项 用于设置爬虫去重强度

Examples:


    targetUrl = "http://testphp.vulnweb.com/"    scanRepeatOpt = crawlerx.scanRepeatLevel(crawlerx.UnLimitRepeat)    // 对page,method,query-name,query-value和post-data敏感    // scanRepeatOpt = crawlerx.scanRepeatLevel(crawlerx.LowRepeatLevel)    // 对page,method,query-name和query-value敏感(默认)    // scanRepeatOpt = crawlerx.scanRepeatLevel(crawlerx.MediumRepeatLevel) // 对page,method和query-name敏感    // scanRepeatOpt = crawlerx.scanRepeatLevel(crawlerx.HighRepeatLevel)   // 对page和method敏感    // scanRepeatOpt = crawlerx.scanRepeatLevel(crawlerx.ExtremeRepeatLevel)    // 对page敏感    ch, err = crawlerx.StartCrawler(targetUrl, scanRepeatOpt)    ...

定义#

scanRepeatLevel(scanRepeat repeatLevel) ConfigOpt

参数#

参数名参数类型参数解释
scanRepeatrepeatLevel

返回值#

返回值(顺序)返回值类型返回值解释
r1ConfigOpt

sensitiveWords#

详细描述#

sensitiveWords 是一个请求选项 用于设置页面按钮点击时的敏感词

Examples:


    targetUrl = "http://testphp.vulnweb.com/"    sensitiveWords = "logout,delete"    ch, err = crawlerx.StartCrawler(targetUrl, crawlerx.sensitiveWords(sensitiveWords.Split(","))) // 当按钮所在元素中存在logout和delete关键词时不会点击    ...

定义#

sensitiveWords(words []string) ConfigOpt

参数#

参数名参数类型参数解释
words[]string

返回值#

返回值(顺序)返回值类型返回值解释
r1ConfigOpt

sessionStorage#

详细描述#

定义#

sessionStorage(storage map[string]string) ConfigOpt

参数#

参数名参数类型参数解释
storagemap[string]string

返回值#

返回值(顺序)返回值类型返回值解释
r1ConfigOpt

sourceType#

详细描述#

定义#

sourceType(sourceType string) ConfigOpt

参数#

参数名参数类型参数解释
sourceTypestring

返回值#

返回值(顺序)返回值类型返回值解释
r1ConfigOpt

stealth#

详细描述#

定义#

stealth(stealth bool) ConfigOpt

参数#

参数名参数类型参数解释
stealthbool

返回值#

返回值(顺序)返回值类型返回值解释
r1ConfigOpt

urlCheck#

详细描述#

urlCheck 是一个请求选项 用于设置是否在爬虫前进行url存活检测

Examples:


    targetUrl = "http://testphp.vulnweb.com/"    ch, err = crawlerx.StartCrawler(targetUrl, crawlerx.urlCheck(true))    ...

定义#

urlCheck(check bool) ConfigOpt

参数#

参数名参数类型参数解释
checkbool

返回值#

返回值(顺序)返回值类型返回值解释
r1ConfigOpt

vue#

详细描述#

定义#

vue(vue bool) ConfigOpt

参数#

参数名参数类型参数解释
vuebool

返回值#

返回值(顺序)返回值类型返回值解释
r1ConfigOpt

whitelist#

详细描述#

whitelist 是一个请求选项 用于设置只会被访问的url链接中包含的关键词

Examples:


    targetUrl = "http://testphp.vulnweb.com/"    ch, err = crawlerx.StartCrawler(targetUrl, crawlerx.whitelist("test", "click")) // 设置只会访问url中包含test和click的链接    ...

定义#

whitelist(keywords ...string) ConfigOpt

参数#

参数名参数类型参数解释
keywords...string

返回值#

返回值(顺序)返回值类型返回值解释
r1ConfigOpt