首页 - 神途礼包 > Go+chromedp实现cf活动抢领

Go+chromedp实现cf活动抢领

发布于:2024-03-26 作者:admin 阅读:151

最近沉迷游戏,却无奈手速不佳,未能抢到心仪的装备,于是就有了如下分析

首先来到活动页面

分析页面

首先,f12查看,找到指定的按钮的或者,例如如下

这里有个小坑,因为如图所示,只有在这个在线风暴里面才有这个武器,所以我们要想拿到这个武器的按钮就必须先点击这个在线风暴

领取问题解决了,接下来就是最重要的登录问题了。

账号密码登录

这里又有一个坑,反复测试发现这里如果是直接在活动页面里面点击登录然后就操作不了登陆框中的账号密码登录按钮等,所以这里必须通过f12中的中查找到对应的ajax操作。

或者搜索xin,找到形如如上的url即可,这里我们登录的思路是先在这个页面里面登录然后跳转到活动页面,这样就可以保证活动页面有之前会话时保存的信息,也就实现了登录。

然后通过定位输入等

End

code

package main
 
import (
	"context"
	"github.com/chromedp/chromedp"
	"time"
)
 
func main() {
	//显示浏览器窗口

	allocctx, cancel := chromedp.NewExecAllocator(
		context.Background(),
	)
	defer cancel()
	//创建chromedp上下文实例

	ctx, cancel := chromedp.NewContext(allocctx)
	defer cancel()
	var err = chromedp.Run(ctx,
		//先登录,通过活动页面f12->network->search->xin->找到形如下面的url

		chromedp.Navigate(`https://xui.ptlogin2.qq.com/cgi-bin/xlogin?proxy_url=https://game.qq.com/comm-htdocs/milo/proxy.html&appid=21000124&target=top&s_url=https%3A%2F%2Fcf.qq.com%2F&style=20&daid=8`),
		//等待页面加载成功

		chromedp.Sleep(2*time.Second),
		//点击账号密码登录

		chromedp.Click(`switcher_plogin`, chromedp.ByID,chromedp.NodeVisible),
		//输入账号 这里selector无解,jspath可以

		chromedp.SendKeys(`document.querySelector("#u")`, "99746460",chromedp.By *** Path),
		//输入密码

		chromedp.SendKeys(`document.querySelector("#p")`, "password",chromedp.By *** Path),
		//点击登录

		chromedp.Click(`#login_button`),
		chromedp.Sleep(1*time.Second),
		//跳转到活动页面

		chromedp.Navigate("https://cf.qq.com"),
		//等待网页加载

		chromedp.Sleep(1*time.Second),
		//找到第二栏

		chromedp.Click(`body > div.wrap > div > div.mind > div.nav > a.t2`),
		//点击领取按钮

		chromedp.Click(`div.part02 > ul > li:nth-child(1) > a`),
	)
	if err != nil {
		panic(err)
	}
}

二维码

扫一扫关注我们

版权声明:本文内容由互联网用户自发贡献,本站不拥有所有权,不承担相关法律责任。如果发现本站有涉嫌抄袭的内容,请告知我们,本站将立刻删除涉嫌侵权内容。

相关文章