V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX  ›  abc0707  ›  全部回复第 1 页 / 共 1 页
回复总数  7
不会搞数字签名.......
2020-07-24 22:43:06 +08:00
回复了 ysmood 创建的主题 Go 编程语言 Rod 一个为简化自动化和爬虫设计的 devtools driver
好的 谢谢
2020-07-24 22:11:58 +08:00
回复了 ysmood 创建的主题 Go 编程语言 Rod 一个为简化自动化和爬虫设计的 devtools driver
代码

package main

import (
"fmt"

"github.com/go-rod/bypass"
"github.com/go-rod/rod"
"github.com/go-rod/rod/lib/launcher"
)

func main() {
url := launcher.New().Headless(false).Client()

browser := rod.New().Client(url).Connect()
defer browser.Close()

page := bypass.Page(browser)

page.Navigate("https://www.baidu.com").WaitLoad()

page.ScreenshotFullPage("testresult.png")

fmt.Println("All done, check the screenshot. ✨")
}

报错:
panic: malformed ws or wss URL

goroutine 1 [running]:
github.com/ysmood/kit/pkg/utils.E(0xc000042ca0, 0x1, 0x1, 0xe53e98, 0x0, 0x0)
D:/Program Files/Gopath/src/github.com/ysmood/kit/pkg/utils/utils.go:33 +0xb2
github.com/go-rod/rod.(*Browser).Connect(0xc00007c880, 0xc0003a26c0)
D:/Program Files/Gopath/src/github.com/go-rod/rod/sugar.go:18 +0xa4
main.main()
c:/Users/zhaob/Desktop/qingdao/main.go:14 +0x94
exit status 2
2020-07-24 21:51:26 +08:00
回复了 ysmood 创建的主题 Go 编程语言 Rod 一个为简化自动化和爬虫设计的 devtools driver
bypass.Page 如何设置 .Headless(false) 这个呢
2020-07-24 21:46:37 +08:00
回复了 ysmood 创建的主题 Go 编程语言 Rod 一个为简化自动化和爬虫设计的 devtools driver
大佬 有没有交流群啊 之前的一个项目加了反爬虫 好多验证 今天刚搜索到这个库感觉还可以
2020-07-24 21:43:30 +08:00
回复了 ysmood 创建的主题 Go 编程语言 Rod 一个为简化自动化和爬虫设计的 devtools driver
好的 这个是看 issue 里面的 我去试试你说的这个
2020-07-24 17:57:49 +08:00
回复了 ysmood 创建的主题 Go 编程语言 Rod 一个为简化自动化和爬虫设计的 devtools driver
请问 反反爬怎么做

go browser.EachEvent(func(e *proto.TargetTargetCreated) {
// We only want to listen to events which are when a Page is created.
// This filters out all other target types are created, e.g service
// workers, shared workers, and background pages.
fmt.Println(e.TargetInfo.Type)
fmt.Println(proto.TargetTargetInfoTypePage)
if e.TargetInfo.Type != proto.TargetTargetInfoTypePage {
return
}

// We use the ID to obtain the page ourselves to use.
page02 := browser.PageFromTargetID(e.TargetInfo.TargetID)
fmt.Println(page02)
// Log "hey" on each newly created page.
page02.Eval(`Object.defineProperty(navigator, 'webdriver', {
get: () => undefined
})`)
})()

按照官网例子还是不行呢
关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   3141 人在线   最高记录 6679   ·     Select Language
创意工作者们的社区
World is powered by solitude
VERSION: 3.9.8.5 · 11ms · UTC 13:31 · PVG 21:31 · LAX 05:31 · JFK 08:31
Developed with CodeLauncher
♥ Do have faith in what you're doing.