背景简介---拼多多忠实用户的日常-砍一刀
本人是个由于砍一刀入迷了,每次砍一刀还得召唤亲朋好友,怪麻烦的,后来想到自己弄几个账号相互砍,简直完美的想法。
作为菜鸟,第一个想到的肯定是看有没有网上写好的,无奈大家都是只分享成功的喜悦,不分享怎么实现的(伤心)。还是自己动手丰衣足食。再经历3天3页的奋战,终于实现出来了。这个思路可以实现大部分网站的登录
本人使用的winform+cefsharp实现的,关于cefsharp,这里就不多介绍了
1、初始化cefsharp--
//初始化浏览器并启动
public void InitializeChromium()
{
var settings = new CefSettings
{
Locale = "zh-CN"
};
settings.CachePath = AppDomain.CurrentDomain.BaseDirectory + "caches\\";
settings.PersistSessionCookies = true;
settings.PersistUserPreferences = true;
Cef.Initialize(settings);
chromeBrowser = new ChromiumWebBrowser("http://yangkeduo.com/");
chromeBrowser.KeyboardHandler = new CEFKeyBoardHander();
chromeBrowser.FrameLoadEnd += Browser_FrameLoadEnd;
this.panel1.Controls.Add(chromeBrowser);
chromeBrowser.Dock = DockStyle.Fill;
}
this.panel1 这是个容器,大家自行放到自己的容器就行了,我这里用的是panel容器
2、核心-切换账号的实现,切换账号其实就是切换用户的“cookie”
作为小白有必要解释一下cookie ,咱们平时登录拼多多,需要手机号发送验证码登录,登录后拼多多服务会给这个用户的颁发一个token,这个token就是访问拼多多的服务器的令牌,有他拼多多的大门就向你敞开。这个token是存在cookie里边的。
//我这儿是一个表格,选中一行切换一个账号
PddToken pddToken = this.dataGridView1.Rows[e.RowIndex].DataBoundItem as PddToken;
if (pddToken == null)
{
return;
}
Cef.GetGlobalCookieManager().DeleteCookiesAsync(pddurl, "PDDAccessToken");
Cef.GetGlobalCookieManager().DeleteCookiesAsync(pddurl, "pdd_user_id");
var PDDAccessToken = new CefSharp.Cookie
{
Path = "/",
Domain = "yangkeduo.com",
Creation = DateTime.Today,
Expires = DateTime.Today.AddDays(30),
Name = "PDDAccessToken",
Value = pddToken.PDDAccessToken
};
var pdd_user_id = new CefSharp.Cookie
{
Path = "/",
Domain = "yangkeduo.com",
Creation = DateTime.Today,
Expires = DateTime.Today.AddDays(30),
Name = "pdd_user_id",
Value = pddToken.pdd_user_id
};
Cef.GetGlobalCookieManager().SetCookie(pddurl, pdd_user_id);
Cef.GetGlobalCookieManager().SetCookie(pddurl, PDDAccessToken);
chromeBrowser.Reload(true);
3、成功展示
首次初始化先登录一个账号,然后每次使用上边切换账号的方法就可以实现切换账号的啦。
最后,此次做这个小工具收获很多,刚开始走了很多弯路,比如设置cookie,从浏览器把整个cookie取出来,然后用cefshap设置进去,发现怎么都不好使,后来才发先设置的方法有问题。后来再大神的指示下换了中思路,先登录一个账号,这样cookie就有了,切换的账号的时候只需要修改一部分就可以了。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。
扫码关注腾讯云开发者
领取腾讯云代金券
Copyright © 2013 - 2025 Tencent Cloud. All Rights Reserved. 腾讯云 版权所有
深圳市腾讯计算机系统有限公司 ICP备案/许可证号:粤B2-20090059 深公网安备号 44030502008569
腾讯云计算(北京)有限责任公司 京ICP证150476号 | 京ICP备11018762号 | 京公网安备号11010802020287
Copyright © 2013 - 2025 Tencent Cloud.
All Rights Reserved. 腾讯云 版权所有