jtahstu的博客

1373758426   Git仓库   GitBook  

最新碎语:以后没事写写小的知识点吧

您的位置:jtahstu的博客 >笔记> 论如何一天时间进CSDN博客排名前500

论如何一天时间进CSDN博客排名前500

2017/05/15 更新 : 本软件早已失效,大家请绕路吧!

    这个软件实际上很早以前就完成了,2015年9月13日,都过去4个月了,然后一直懒得写博客,所以一直就搁置了,正好这两天又把这软件拿出来用了,就索性写一下吧,大家简单写点C#的窗体程序这块,主要就是控件啦。    

     先看成果图吧:

       

    ok,就是刷访问量,然后间接刷积分和排名了,这个排名还没有更新,实际上我现在这个积分排名应该在600名左右的,还是不错的。

    排名已更新,竟然300多名了。


                         csdn

     在正式说之前,再说个小插曲吧,记得那是一个月黑风高的夜晚,哈,应该是上个暑假的时候,2015年的暑假,当时写博客冒出了这么个点子,刷访问量嘛,然后写了篇文 章,测试啊什么的,然后本人把那篇文章的访问量刷到了100多万,这样瞬间不就进排行榜了嘛,然后就吸引人过来了嘛,当然了就把管理员吸引来了,先把本人的 测试文章删了,本人感觉很不爽,于是还是在刷,改刷其他文章,结果管理员来又把本人csdn博客给封了,然后本人又很不爽,又写了点东西感慨一下,但是本人还是很 不爽,就准备搬家了,有什么好的嘛,本人自己搞个博客,老子不在这寄人篱下了,还得受你管。在csdn写的东西能被更多的人看到,大家一起学习嘛,然后百度也会很快的收录你的文章,这样需要这块知识的人就能很快的搜到你的文章,然后你发在自己博客的东西,就有点无人问津了,你的网站权重不够,百度蜘蛛又不常来,结果你写的很多东西也就有心人能看到了,其他人 看不到,那不就是浪费嘛,不如现在这篇文章,看到的也是甚少,暂不图那个虚名好吧,再说这个发到csdn可能就被封了,哈,那我过会发到博客园去,嘿嘿。不说了,讲重点,感觉本人有点话唠啊,废话有点多。

     之前写过一个博客轰炸机的文章,很早以前了,给个链接http://www.jtahstu.com/blog/post-14.html,对,就是这个,实际上精髓都在这个代码里了。这个算是1.0版本,今天介绍的是3.0版本,实际上就是加个壳啦,然后傻瓜式操作,更方便了。

     下面这个是程序的主界面了,上来就是3.0的,1.0和2.0的在上面的菜单里。上面有两个菜单,分别有两个子项,就不上图了,自己看看吧。

    



    然后有两个声明,哈,毕竟这个对csdn来说是个不好的东西,主要就是大家如果都在用的话,肯定就形成DDoS了,那实在是太糟糕了,因为我自己也被DDoS过,几十G每秒的请求,本人的服务器直接瘫痪了,持续了一天左右,那都是网络上的攻击了,也不是针对型的,而这个就很针对了,求CSDN现在的心理阴影面积。


     OK,说了这么多,先上1.0的代码吧,在之前的版本上修改了一点。       

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.IO;
using System.Linq;
using System.Net;
using System.Text;
using System.Threading;
using System.Threading.Tasks;
using System.Windows.Forms;

namespace 博客轰炸机3._0 {
    public partial class One : Form {
        public One() {
            InitializeComponent();
        }

        private void button1_Click(object sender , EventArgs e) {
            Thread th = new Thread(gao);
            th.IsBackground = true;
            th.Start();
        }
        private void gao() {
            System.Net.WebClient client = new WebClient();
            for (int i = 1 ; i <= int.Parse(count.Text) ; i++) {
                try {
                    Stream strm = client.OpenRead(link.Text);
                    strm.Close();
                    show.AppendText("目前正在执行第" + i.ToString() + "次轰炸...\n");
                    if (i % 100 == 0)
                        show.AppendText("哎呦,不错呦 O(∩_∩)O~\n");
                    if (i % 200 == 0)
                        show.AppendText("哎呦,太牛X了 O(∩_∩)O~\n");
                    if (i % 500 == 0)
                        show.AppendText("哎呦,程序已经暴走 O(∩_∩)O~\n");
                    if (i % 1000 == 0)
                        show.AppendText("哎呦,这是要超神的节奏 O(∩_∩)O~\n");
                    if (i % 2000 == 0)
                        show.AppendText("哎呦,虽然很装逼,可不要贪杯哦 O(∩_∩)O~\n");
                    if (i % 4000 == 0)
                        show.AppendText("哎呦,装逼有点过度哦 O(∩_∩)O~\n");
                    if (i % 80000 == 0)
                        show.AppendText("哎呦,叼的一比哦 O(∩_∩)O~\n");
                    if (i % 10000 == 0)
                        show.AppendText("哎呦,赶紧关了吧,电脑要炸了 O(∩_∩)O~\n");

                } catch (Exception exc) {
                    show.AppendText(exc.Message);
                    continue;
                }
            }
            show.AppendText("ok nice 按指定次数轰炸完毕!");
        }

        private void One_Load(object sender , EventArgs e) {
            Control.CheckForIllegalCrossThreadCalls = false;
        }
    }
}

     然后下面是2.0的代码,这个一开始的设计是说,是对几篇文章进行轰炸,这也是一个需求嘛,毕竟1.0一个一个来实在是太慢了,所以延伸出了这个2.0版本。   

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.IO;
using System.Linq;
using System.Net;
using System.Text;
using System.Threading;
using System.Threading.Tasks;
using System.Windows.Forms;

namespace 博客轰炸机3._0 {
    public partial class Two : Form {
        public Two() {
            InitializeComponent();
        }

        private void button1_Click(object sender , EventArgs e) {
            Thread th = new Thread(gao);
            th.IsBackground = true;
            th.Start();
        }
        private void gao() {
            System.Net.WebClient client = new WebClient();
            string[] s = link.Text.Split(new char[] { '\n' ,' '});
            for (int i = 1 ; i <= int.Parse(count.Text) ; i++) {
                for (int j = 0 ; j < s.Length ; j++) {
                    try {
                        Stream strm = client.OpenRead(s[j]);
                        strm.Close();
                        show.AppendText("目前正在第" + i.ToString() + "次轰炸第" + j.ToString() + "条链接...\n");
                    } catch (Exception exc) {
                        show.AppendText(exc.Message);
                        continue;
                    }
                }
            }
            show.AppendText("ok nice 按指定次数轰炸完毕!");
        }

    }
}

     OK,上面两个显然都是有点过时的了,虽然有时候也是很有用的,下面详细讲解3.0版本。

     3.0的突破在于他拿到了你所有文章的链接,然后一个接一个的轰炸一遍,就像是一个地图炮,哈哈,显然这样刷是非常有效的,刷积分也是最快的,毕竟自己基本不用管,只需输入自己或其他人的用户名,简单、方便、快捷。       

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.IO;
using System.Linq;
using System.Net;
using System.Text;
using System.Threading;
using System.Threading.Tasks;
using System.Windows.Forms;

namespace 博客轰炸机3._0 {
    public partial class Form1 : Form {
        public Form1() {
            InitializeComponent();
        }
        System.Net.WebClient client = new WebClient();
        List<string> list = new List<string>();
        int sum = 0;
        Thread Th_1;
        private void button1_Click(object sender , EventArgs e) {
            if (name.Text != null && Count.Text != null) {
                Th_1 = new Thread(gan);
                Th_1.IsBackground = true;
                Th_1.Start();
            } else {
                MessageBox.Show("用户名和轰炸次数请填写完整");
            }
            
        }
        /// <summary>
        /// 事先准备阶段,包括获取文章链接和左边txtbox的显示
        /// </summary>
        private void gan() {
            try {
                string id = name.Text;
                string url = @"http://blog.csdn.net/" + id + @"/article/list/100";
                Stream strm = client.OpenRead(url);
                StreamReader sr = new StreamReader(strm);
                string html_code = sr.ReadToEnd();
                strm.Close();
                sr.Close();
                int start = html_code.IndexOf(" class=\"list\"") , sta = 0;
                int end = html_code.IndexOf("<div id=\"papelist\" class=\"pagelist\">");
                for (int i = 0 ; i < 500 * 3 ; i++) {
                    sta = html_code.IndexOf("article/details/" , start);
                    if (sta > 10) {
                        string count = html_code.Substring(sta + 16 , 8);
                        if (!Char.IsDigit(count[count.Length - 1]))
                            count = count.Substring(0 , 7);
                        string Temp_url = @"http://blog.csdn.net/" + id + @"/article/details/" + count;
                        if (!list.Contains(Temp_url)) {
                            list.Add(Temp_url);
                            sum++;
                        }
                        start = sta + 50;
                    }
                    if (sta > end)
                        break;
                }
                ListShow.AppendText("目前在该博客检测到" + sum.ToString() + "篇博文\r\n");
                foreach (var show in list) {
                    ListShow.AppendText(show + "\r\n");
                }
                boom();
            } catch (Exception ex) {
                MessageBox.Show(ex.Message);
            }
        }
        /// <summary>
        /// 轰炸部分,包括右边txtbox的显示部分
        /// </summary>
        private void boom() {
            int count = int.Parse(Count.Text);
            string[] link = list.ToArray();
            for (int i = 1 ; i <= count ; i++) {
                if (i % 1 == 0)
                    TextShow.AppendText("哎呦,不错呦 O(∩_∩)O~\r\n");
                if (i % 2 == 0)
                    TextShow.AppendText("哎呦,太牛X了 O(∩_∩)O~\r\n");
                if (i % 5 == 0)
                    TextShow.AppendText("哎呦,程序已经暴走 O(∩_∩)O~\r\n");
                if (i % 10 == 0)
                    TextShow.AppendText("哎呦,这是要超神的节奏 O(∩_∩)O~\r\n");
                if (i % 15 == 0)
                    TextShow.AppendText("哎呦,虽然很装逼,可不要贪杯哦 O(∩_∩)O~\r\n");
                if (i % 20 == 0)
                    TextShow.AppendText("哎呦,装逼有点过度哦 O(∩_∩)O~\r\n");
                if (i % 25 == 0)
                    TextShow.AppendText("哎呦,叼的一比哦 O(∩_∩)O~\r\n");
                if (i % 30 == 0)
                    TextShow.AppendText("哎呦,赶紧关了吧,电脑要炸了 O(∩_∩)O~\r\n");
                for (int j = 1 ; j <= sum ; j++) {
                    try {
                        TextShow.AppendText("目前正在第" + i.ToString() + "次轰炸第" + j.ToString() + "条链接...\r\n");
                        Stream st = client.OpenRead(link[j - 1]);
                        st.Close();

                    } catch (Exception exc) {
                        TextShow.AppendText(exc.Message + "\r\n");
                        continue;
                    }
                }
            }
            TextShow.AppendText("OK nice 博客按指定次数轰炸完毕了!");
        }

        private void 声明ToolStripMenuItem_Click(object sender , EventArgs e) {

            MessageBox.Show("本软件为作者一时兴起之产物,可能对CSDN形成DDos攻击,如产生任何不良后果请使用者自负,与作者无关!");
        }

        private void Form1_Load(object sender , EventArgs e) {
            Control.CheckForIllegalCrossThreadCalls = false;
        }

        private void 注意事项ToolStripMenuItem_Click(object sender , EventArgs e) {
            string p1 = "       本软件在1.0的基础上做出了很大的改变,首先就是从控制台程序到WinForm界面操作的突破,然后在设计上更加简化,只需输入用户名和轰炸的次数即可,简单快捷!\r\n";
            string p2 = "       如果出现右边显示栏停止显示,就像卡住了似的,一般是正常情况,那是程序抛出了异常造成的程序短暂性卡顿,这种异常往往是本机网络的异常和CSDN服务器未响应而造成的,耐心等待即可。\r\n";
            string p3 = "       若程序一直抛异常,可以重新启动本程序,再继续,因为这个时候可能正处于某种持续性异常下,或者服务器检测到你这个IP的大量流量访问,被服务器屏蔽了,这个是作者猜测的,毕竟服务器肯定会有相应程序来自保的,不然岂不死机了,如果只是一两次那等一会就好了!";
            string s = p1 + p2 + p3;
            MessageBox.Show(s);
        }

        private void button2_Click(object sender , EventArgs e) {
            try {
                Th_1.IsBackground = false;
                Th_1.Abort();
                TextShow.AppendText("OK nice 博客轰炸机已经停止运行了!");
            } catch (Exception ee) {
                TextShow.AppendText(ee.Message);
            }
            
        }

        private void 轰炸某一篇博客ToolStripMenuItem_Click(object sender , EventArgs e) {
            One one = new One();
            one.Show();
        }

        private void 轰炸多篇博客ToolStripMenuItem_Click(object sender , EventArgs e) {
            Two two = new Two();
            two.Show();
        }

        
    }
}

     目前如果你的文章如果太老的话,即你的文章在1千万之前,即不是8位数,就不能正确获取到链接,后面多出来个字符,这样链接不正确,显然是没用的,对吧?目前博客的链接数已经到五千多万了,离一亿的话说快不快,说慢也不会太慢,在本人将近4个月没有写博客的情况下,CSDN博客文章量上涨了两百多万,按这速度,想填满这将近五千万的文章,需要七年左右,所以如果是七年后看到这篇文章,请修改下获取文章链接处的代码。

     说了这么多,就是说你最好有看懂代码的能力,然后有VS编译之,不要做一个只是拿来用软件的自作聪明的小子,然后向别人来炫耀你有多厉害,这是很可耻的,只会用软件来做一些坏事的人,是没有什么资本可以吹嘘的,如果你能自己做一个黑客软件,那才是最流弊的,ok,作为搞技术我们还是得探究其本质的。

     3.0的代码我就不讲解了,我感觉自己讲的废话实在太多了,因为是初学者,里面的多线程写的实际上是失败的,用起来,好吧,根本就用不起来,我懒得看了,也懒得改了,有兴趣自己写写看吧。

后续

     前两天,我还看到个刷csdn回复量的,一下子刷了一千多回复,然后你看那些积分榜前几个的也都是不正常的,不知道是以前CSDN的黑历史,还是那些人比较牛逼,那十几二十万的积分显然就不正常,毕竟本人现在刷的积分也才一万多,不到两万。

     哦,对了,建议大家看一下CSDN的积分规则,传送门:http://blog.csdn.net/home/help.html  你得先了解这个积分规则,一篇文章只有100点积分哦,也就是访问量到10000就可以了,再多也就是为了装逼哦,目前本人有将近200篇文章,然后积分能刷到两万左右。

     告诉大家个小秘密,就是本人拿C币,积分高送C币嘛,从CSDN那坑了本书,asp.net的书。然后本人再兑换书,他就不给发了,显然这是进了黑名单了啊。

     后面等本人看懂了模拟登录,那样欢乐就更多了,能瞬间把一个安全意识不高的网站给整垮了,至少能恶心到网站管理员,哈哈。就是那些没有验证码登录的网站,然后模拟浏览器发送数据,然后哈哈,你懂得。

     OK,这个我就不发百度云链接了,实际上本人是不想发的,算了还是把编译后的程序发一下吧

     链接: http://pan.baidu.com/s/1pJRp83h

     这个源代码就不发了,大家学习一下,并不是想广泛传播。然后运行这个exe可执行程序,应该会要求你安装一个版本的.net framework,毕竟这个是运行的基础嘛。想用你就装,只是看看就不要装了。

    寒冰射手 艾希 说过一句话:“我们走在正确的道路上”,愿你我都走在正确的道路上。

---  作者jtahstu写于2016年1月22日中午的安科寝室,室外气温1℃,中雪,大雪纷飞,室内音乐不绝于耳

---

本文章采用 知识共享署名2.5中国大陆许可协议 进行许可,欢迎转载,演绎或用于商业目的。

---

二维码加载中...

扫一扫移动端访问O(∩_∩)O

发表评论

58 + 72 =
路人甲 表情
看不清楚?点图切换 Ctrl+Enter快速提交

网友评论(1)

目前本软件已失效 ╮(╯▽╰)╭
jtahstu 12个月前 (12-26) 回复
正在加载中……