User-Profile-Image
hankin
  • 5
  • 首页
  • 留言
  • 仓库
  • 云端
  • 分类
    • 随笔
    • 安卓逆向
    • php
    • node.js
    • C#
  • 页面
    • 个人技术栈
    • 留言
  • 友链
    • 沉沦云API
    • 沉沦云端
    • SinKingMusic
    • 美和易思刷课
    • 神奇的七云
    • khaos编程小站
    • 小九实验室
    • 一叶三秋
    • 青年的故事
    • :李白云博客
    • 噜阿噜-资源站
    • 小k
Help?

Please contact us on our email for need any support

Support
    首页   ›   C#   ›   正文
C#

c#模拟QQ空间访问

2020-05-08 21:53:06
206974  1109 19

这是在开发QQ访客加速软件写的核心操作功能类,现在贡献出来,并且也为以后的开发提供示例!以下是核心协议及功能代码:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Net;
using System.IO;
using System.Collections.Specialized;
using System.Text.RegularExpressions;

namespace QzoneSpeed
{
    class Qzone
    {
        private string uin;

        private string skey;

        private string pskey;

        private string cookie;
        public Qzone() { 
        }
        public Qzone(string uin, string skey, string pskey)
        {
            this.uin = uin;
            this.skey = skey;
            this.pskey = pskey;
            this.cookie = this.cookies();
        }
        //获取cookie
        private string cookies()
        {
            string res;
            if (this.pskey == "")
            {
                res = "pt2gguin=o" + this.uin + "; uin=o0" + this.uin + "; skey=" + this.skey + ";";
            }
            else
            {
                res = "pt2gguin=o" + this.uin + "; uin=o" + this.uin + "; skey=" + this.skey + ";p_skey=" + this.pskey + "; p_uin=o" + this.uin + ";";
            }
            return res.Replace("\n", "").Replace(" ", "").Replace("\t", "").Replace("\r", "");
        }
        //获取gtk
        public string GetGTK(string sKey)
        {
            if (skey=="")
            {
                return "";
            }
            var hash = 5381;
            for (int i = 0, len = sKey.Length; i < len; ++i)
            {
                hash += (hash << 5) + sKey[i];
            }
            return (hash & 0x7fffffff).ToString();
        }
        //设置header
        public static void SetHeaderValue(WebHeaderCollection header, string name, string value)
        {
            var property = typeof(WebHeaderCollection).GetProperty("InnerCollection",
                System.Reflection.BindingFlags.Instance | System.Reflection.BindingFlags.NonPublic);
            if (property != null)
            {
                var collection = property.GetValue(header, null) as NameValueCollection;
                collection[name] = value;
            }
        }
        //发送HTTP请求
        public string http(string url, string post = "", string referer = "1", string cookie = "0", string header = "0", string ua = "0", string nobaody = "0")
        {
            try
            {
                HttpWebRequest request = (HttpWebRequest)WebRequest.Create(url);
                if (!header.Equals("0"))
                {
                    string[] headers = header.Split('|');
                    for (int i = 0; i < headers.Length; i++)
                    {
                        SetHeaderValue(request.Headers, headers[i].Split(':')[0], headers[i].Split(':')[1]);
                    }
                }

                if (!post.Equals(""))
                {
                    request.Method = "POST";
                }
                else
                {
                    request.Method = "GET";
                    request.Proxy = null;
                    request.KeepAlive = false;
                    request.AutomaticDecompression = DecompressionMethods.GZip;
                }

                if (!referer.Equals("1"))
                {
                    request.Referer = referer;
                }
                else
                {
                    request.Referer = "http://h5.qzone.qq.com/mqzone/index";
                }
                if (ua.Equals("0"))
                {
                    request.UserAgent = "Mozilla/5.0 (Linux; U; Android 4.4.1; zh-cn) AppleWebKit/533.1 (KHTML, like Gecko)Version/4.0 MQQBrowser/5.5 Mobile Safari/533.1";
                }
                else
                {
                    request.UserAgent = ua;
                }
                if (!cookie.Equals("0"))
                {
                    request.Headers.Add("Cookie", cookie);
                }
                if (!post.Equals(""))
                {
                    byte[] data = Encoding.UTF8.GetBytes(post);
                    request.ContentLength = data.Length;
                    Stream newStream = request.GetRequestStream();
                    newStream.Write(data, 0, data.Length);
                    newStream.Close();
                }
                request.Accept = "application/json";
                SetHeaderValue(request.Headers, "Accept-Encoding", "gzip,deflate,sdch");
                SetHeaderValue(request.Headers, "Accept-Language", "zh-CN,zh;q=0.8");
                SetHeaderValue(request.Headers, "Connection", "close");
                HttpWebResponse myResponse = (HttpWebResponse)request.GetResponse();
                StreamReader reader = new StreamReader(myResponse.GetResponseStream(), Encoding.UTF8);
                string content = reader.ReadToEnd();
                return content;
            }
            catch (Exception ex)
            {
                return ex.Message;
            }
        }
        //获取字符串间内容
        public string GetText(string t, string k, string j)
        {
            try //异常捕捉
            {
                var kn = t.IndexOf(k, StringComparison.Ordinal) + k.Length;
                var jn = t.IndexOf(j, kn, StringComparison.Ordinal);
                return t.Substring(kn, jn - kn);
            }
            catch
            {
                return "fail"; //返回错误
            }
        }
        //访客加速操作(mobile)
        public bool Visitor(string qq)
        {
            string url = "https://h5.qzone.qq.com/webapp/json/friendSetting/reportSpaceVisitor?qzonetoken=qzonetoken&g_tk=" + this.GetGTK(this.pskey) + "&uin=" + qq + "&visitUin=" + this.uin;
            string post = "g_tk=" + this.GetGTK(this.pskey) + "&uin=" + qq + "&visitUin=" + this.uin;
            string res = this.http(url, post, "1", this.cookie);
            return res == "{\"ret\":0,\"msg\":\"\",\"data\":{\"retCode\":0}}";
        }
        //获取今日访客数
        public string TodayVisitorCount(string qq)
        {
            string url = "https://mobile.qzone.qq.com/mqz_get_visitor?g_tk=" + this.GetGTK(this.skey) + "&res_mode=0&res_uin=" + qq + "&offset=0&count=1&page=1&format=json&t=1562141624588";
            string res = this.http(url, "", "1", this.cookie);
            res = GetText(res, ",\"todaycount\":", ",\"totalcount\"");
            string nums = res == "fail" ? "0" : res;
            return nums;
        }
        //获取qzonetoken
        public string GetQzoneToken()
        {
            string url = "https://h5.qzone.qq.com/mqzone/index";
            string ua = "Mozilla/5.0 (Linux; U; Android 4.4.1; zh-cn) AppleWebKit/533.1 (KHTML, like Gecko)Version/4.0 MQQBrowser/5.5 Mobile Safari/533.1";
            string res = this.http(url, "", "1", this.cookie, "0", ua);
            res = GetText(res, "(function(){ try{return \"", "\";}");
            return res;
        }
    }
}

如本文“对您有用”,欢迎随意打赏作者,让我们坚持创作!

19 打赏
评论 (4,721)

回复给 点击这里取消回复。

欢迎您 游客  

  • Скачать песню Магамед Халилов – Авара бесплатно в mp3
    Скачать песню Магамед Халилов – Авара бесплатно в mp3

    10个月前
    回复
  • Barbara Streisand & Bee Gees – Woman In Love – Barbara Streisand – Woman In Love скачать песню в mp3 и слушать онлайн
    Barbara Streisand & Bee Gees – Woman In Love – Barbara Streisand – Woman In Love скачать песню в mp3 и слушать онлайн

    10个月前
    回复
  • Dj. Алигатор – Ballon скачать в mp3 и слушать онлайн бесплатно
    Dj. Алигатор – Ballon скачать в mp3 и слушать онлайн бесплатно

    10个月前
    回复
  • Molodi – Я Не Я скачать песню бесплатно в mp3 и слушать онлайн
    Molodi – Я Не Я скачать песню бесплатно в mp3 и слушать онлайн

    10个月前
    回复
  • Алсу – Там, Где Нет Тебя скачать бесплатно песню и слушать онлайн в mp3
    Алсу – Там, Где Нет Тебя скачать бесплатно песню и слушать онлайн в mp3

    10个月前
    回复
  • Юрий Шатунов – Дождь скачать бесплатно песню в mp3
    Юрий Шатунов – Дождь скачать бесплатно песню в mp3

    10个月前
    回复
  • Santorin – Карусель скачать в mp3 и слушать онлайн бесплатно
    Santorin – Карусель скачать в mp3 и слушать онлайн бесплатно

    10个月前
    回复
  • Скачать песню Мурат Хапсироков – Девочка Война бесплатно в mp3
    Скачать песню Мурат Хапсироков – Девочка Война бесплатно в mp3

    10个月前
    回复
  • Kumie – Вот Что Из Этого Вышло скачать песню бесплатно в mp3 и слушать онлайн
    Kumie – Вот Что Из Этого Вышло скачать песню бесплатно в mp3 и слушать онлайн

    10个月前
    回复
  • Amaranthe – Amaranthe (2011) – Amaranthe – Call Out My Name скачать песню в mp3 и слушать онлайн бесплатно
    Amaranthe – Amaranthe (2011) – Amaranthe – Call Out My Name скачать песню в mp3 и слушать онлайн бесплатно

    10个月前
    回复
  • L Izreal, Gurme – Я А#уел (Skit) скачать песню бесплатно в mp3 и слушать онлайн
    L Izreal, Gurme – Я А#уел (Skit) скачать песню бесплатно в mp3 и слушать онлайн

    10个月前
    回复
  • Потап И Настя Каменских – На Районе – Потап И Настя Каменских – На Районе скачать в mp3 и слушать онлайн бесплатно
    Потап И Настя Каменских – На Районе – Потап И Настя Каменских – На Районе скачать в mp3 и слушать онлайн бесплатно

    10个月前
    回复
  • Молдавская Дискотека – Строинцы – Dulce-I Vinul скачать бесплатно песню и слушать онлайн в mp3
    Молдавская Дискотека – Строинцы – Dulce-I Vinul скачать бесплатно песню и слушать онлайн в mp3

    10个月前
    回复
  • Tony Braxton – Tony Braxton – Un-Break My Heart скачать бесплатно песню в mp3
    Tony Braxton – Tony Braxton – Un-Break My Heart скачать бесплатно песню в mp3

    10个月前
    回复
  • Испанский Стыд – Аттракционы (Dance Version) скачать песню в mp3 и слушать онлайн
    Испанский Стыд – Аттракционы (Dance Version) скачать песню в mp3 и слушать онлайн

    10个月前
    回复
  • Скачать песню Украинские Хиты – Лея – Домовик бесплатно в mp3
    Скачать песню Украинские Хиты – Лея – Домовик бесплатно в mp3

    10个月前
    回复
  • Алсу – Break The Silence скачать бесплатно песню и слушать онлайн в mp3
    Алсу – Break The Silence скачать бесплатно песню и слушать онлайн в mp3

    10个月前
    回复
  • Алсу – Город Под Зонтом скачать бесплатно песню в mp3
    Алсу – Город Под Зонтом скачать бесплатно песню в mp3

    10个月前
    回复
  • Виктор Королёв – Укушу! (2003) – Виктор Королёв – Горькая Калина скачать песню бесплатно в mp3 и слушать онлайн
    Виктор Королёв – Укушу! (2003) – Виктор Королёв – Горькая Калина скачать песню бесплатно в mp3 и слушать онлайн

    10个月前
    回复
  • Жуки – Батарейка (Rule3 Ai Version) скачать песню в mp3 и слушать онлайн бесплатно
    Жуки – Батарейка (Rule3 Ai Version) скачать песню в mp3 и слушать онлайн бесплатно

    10个月前
    回复
  • Наташа Королева – Не Забуду скачать бесплатно песню в mp3
    Наташа Королева – Не Забуду скачать бесплатно песню в mp3

    10个月前
    回复
  • Скачать песню Собака – Первым Поселенцам бесплатно в mp3
    Скачать песню Собака – Первым Поселенцам бесплатно в mp3

    10个月前
    回复
  • Papa Roach – Dead Cell скачать бесплатно песню и слушать онлайн в mp3
    Papa Roach – Dead Cell скачать бесплатно песню и слушать онлайн в mp3

    10个月前
    回复
  • Молдавская – Най Най Най)))) скачать песню в mp3 и слушать онлайн
    Молдавская – Най Най Най)))) скачать песню в mp3 и слушать онлайн

    10个月前
    回复
  • Скандинавская Музыка – Hungarian скачать песню в mp3 и слушать онлайн бесплатно
    Скандинавская Музыка – Hungarian скачать песню в mp3 и слушать онлайн бесплатно

    10个月前
    回复
  • Скачать песню Serpo Feat. Sonnett – Как Ты бесплатно в mp3
    Скачать песню Serpo Feat. Sonnett – Как Ты бесплатно в mp3

    10个月前
    回复
  • Galezard – Фантазия (2024) скачать бесплатно песню в mp3
    Galezard – Фантазия (2024) скачать бесплатно песню в mp3

    10个月前
    回复
  • Alessia Cara – Dead Man скачать песню в mp3 и слушать онлайн бесплатно
    Alessia Cara – Dead Man скачать песню в mp3 и слушать онлайн бесплатно

    10个月前
    回复
  • Dj Jezz & Мс Рыбик – Трэк 2 скачать песню бесплатно в mp3 и слушать онлайн
    Dj Jezz & Мс Рыбик – Трэк 2 скачать песню бесплатно в mp3 и слушать онлайн

    10个月前
    回复
  • Nemiga – А Мы скачать в mp3 и слушать онлайн бесплатно
    Nemiga – А Мы скачать в mp3 и слушать онлайн бесплатно

    10个月前
    回复
1 … 31 32 33 34 35 … 158
流逝中沉沦
12文章 50946评论 1470点赞 4302398浏览

随机文章
美和易思app协议分析及功能实现(美和易思刷课)
5年前
c#音乐解析组件(dll)
5年前
QQ全套扫码加速
5年前
归来仍是少年
5年前
安卓QQ协议登陆示例(c#)
5年前
最新评论
+376
网站留言
Copyright © 2025 网站备案号: 皖ICP备18022767号-3
沉沦云网络. SinKingCloud
主页
页面
  • 个人技术栈
  • 留言
博主
流逝中沉沦
流逝中沉沦 管理员
一个热爱生活热爱技术的00后少年
12 文章 50946 评论 4302398 浏览
测试
测试
赞赏作者

请通过微信、支付宝 APP 扫一扫

感谢您对作者的支持!

 支付宝 微信支付