[分享资源]------外部IE操作-------模拟人工 百度seo排名利器 c# 源码

失落的神庙 2013-03-23 04:13:42


关于config文件为网站的配置


目前支持 搜狗 360搜索(so) soso 百度

额 就发个百度的配置吧


源码。。。


非图片匹配


采集 几万个浏览器标头信息随机模拟


支持代理IP


好吧。。。看看吧。。。

希望别喷


我代码很难看。。。



http://download.csdn.net/detail/wawd74520/5173312
...全文
340 26 打赏 收藏 转发到动态 举报
写回复
用AI写文章
26 条回复
切换为时间正序
请发表友善的回复…
发表回复
w574021936 2015-05-20
  • 打赏
  • 举报
回复
好东西,楼主我想要完善一下的,可是我看不懂啊。哈哈。
失落的神庙 2013-03-29
  • 打赏
  • 举报
回复
引用 26 楼 Joyhen 的回复:
我靠,很牛逼啊楼主,这搞推广很有意思
当学习资料吧 其实也不难的
joyhen 2013-03-29
  • 打赏
  • 举报
回复
我靠,很牛逼啊楼主,这搞推广很有意思
失落的神庙 2013-03-29
  • 打赏
  • 举报
回复
引用 24 楼 caozhy 的回复:
从来都不用流氓百度。随便你们“优化”自己在一个垃圾流氓搜索引擎上的排名吧。反正很乐见垃圾网站加速把流氓搜索搞臭的进程。
没办法 我也不想弄百度 但很多布吉岛的人还在玩百度 这个支持 so soso 搜狗 等搜索引擎 config 文件 大家自己写下 我以前写的配置文件布吉岛丢哪里了
失落的神庙 2013-03-28
  • 打赏
  • 举报
回复
引用 20 楼 gongshunkai2 的回复:
会报错,调用ie清缓存文件报错,说是缺少 ****.dll,很明显,ie6以下浏览器不支持,要ie7以上才能调用这个dll
恩 不支持 ie6以下的
引用 19 楼 gongshunkai2 的回复:
模拟鼠标行为用webbrowser会不会更方便呢
这个貌似效果不好吧
引用 17 楼 maco_wang 的回复:
支持分享,排版再好些就更好了。
以后一定注意
suollk 2013-03-28
  • 打赏
  • 举报
回复
没下载 看看 顶一个
叶子 2013-03-27
  • 打赏
  • 举报
回复
支持分享,排版再好些就更好了。
magicwm 2013-03-27
  • 打赏
  • 举报
回复
失落的神庙 2013-03-27
  • 打赏
  • 举报
回复
引用 14 楼 asd100230520 的回复:
引用 13 楼 wawd74520 的回复:引用 12 楼 asd100230520 的回复:谢谢分享 结果没打开 .net 2.0 环境 我是说用VS没打开 我用的2008
vs2012
asd100230520 2013-03-27
  • 打赏
  • 举报
回复
引用 13 楼 wawd74520 的回复:
引用 12 楼 asd100230520 的回复:谢谢分享 结果没打开 .net 2.0 环境
我是说用VS没打开 我用的2008
gongshunkai2 2013-03-27
  • 打赏
  • 举报
回复
会报错,调用ie清缓存文件报错,说是缺少 ****.dll,很明显,ie6以下浏览器不支持,要ie7以上才能调用这个dll
gongshunkai2 2013-03-27
  • 打赏
  • 举报
回复
模拟鼠标行为用webbrowser会不会更方便呢
mickers 2013-03-27
  • 打赏
  • 举报
回复
好像很厉害的样子,记下待看
失落的神庙 2013-03-26
  • 打赏
  • 举报
回复
引用 12 楼 asd100230520 的回复:
谢谢分享 结果没打开
.net 2.0 环境
asd100230520 2013-03-26
  • 打赏
  • 举报
回复
谢谢分享 结果没打开
失落的神庙 2013-03-26
  • 打赏
  • 举报
回复
引用 10 楼 gupiao175 的回复:
帮顶,下载了,但是用VS2010居然打不开。提示用了更高级的版本创建!
就4个控件 手动弄下 加下事件 两个按钮 一个lable 一个timer
phper530 2013-03-26
  • 打赏
  • 举报
回复
帮顶,下载了,但是用VS2010居然打不开。提示用了更高级的版本创建!
失落的神庙 2013-03-26
  • 打赏
  • 举报
回复
http://download.csdn.net/detail/wawd74520/5183417 可以了 改了的 可以直接开VS 或者 debug里面的exe运行 看效果。。。 亲们。。。回个帖吧。。。
失落的神庙 2013-03-26
  • 打赏
  • 举报
回复
看来得弄一下 去掉代理 然你们直接运行就能看到效果。。。哎。。。 骚等。。。
失落的神庙 2013-03-26
  • 打赏
  • 举报
回复
看来得介绍下了 - - 哎。。。
/// <summary>
        /// 获取IE句柄
        /// </summary>
        /// <returns></returns>
        private bool GetHandleOfBrowser()
        {
            IEHandle = FindWindowA("IEFrame", null);
            if (IEHandle == 0)
                return false;
            else
                return true;
        }

 /// <summary>
        /// 根据元素信息获取坐标
        /// </summary>
        /// <param name="Id">元素ID</param>
        /// <param name="TextStr">元素内容 格式: input|登 录</param>
        /// <returns></returns>
        public Rectangle GetElementPointByMess(out IHTMLElement2 TempYs,string IdStr = "", string TextStr = "")
        {
            int YsX = -1;
            if (BrowserH < 1)
            {
                BrowserH=Screen.PrimaryScreen.WorkingArea.Height - ((IHTMLElement2)Document.documentElement).clientHeight;
            }
            int YsY = BrowserH;
            int YsWith = -1;
            int YsHeight = -1;
            //int dsadsa = ((IHTMLElement2)Document.documentElement).clientHeight;
            TempYs = null;
            try
            {
                if (IdStr != "")
                {
                    IHTMLElement2 TempElement = ((IHTMLElement2)Document.getElementById(IdStr));
                    YsX = TempElement.getBoundingClientRect().left;
                    YsY += TempElement.getBoundingClientRect().top;
                    YsWith = TempElement.scrollWidth;
                    YsHeight = TempElement.scrollHeight;
                    TempYs = TempElement;
                }
                else if (TextStr != "")
                {
                    IHTMLElement2 TempElement = null;
                    foreach (IHTMLElement i in Document.getElementsByTagName(TextStr.Split('|')[0].Trim()))
                    {
                        if (i.innerText == TextStr.Split('|')[1])
                        {
                            TempElement = (IHTMLElement2)i;
                            break;
                        }
                    }
                    YsX = TempElement.getBoundingClientRect().left;
                    YsY += TempElement.getBoundingClientRect().top;
                    YsWith = TempElement.scrollWidth;
                    YsHeight = TempElement.scrollHeight;
                    TempYs = TempElement;
                }
            }
            catch 
            {
                return new Rectangle(-1, -1, -1, -1);
            }
            return new Rectangle(YsX, YsY, YsWith, YsHeight);
        }


/// <summary>
        /// 寻找子元素获取坐标
        /// </summary>
        /// <param name="TempYs">返回找到的元素</param>
        /// <returns></returns>
        public Rectangle GetElementPointByMess(out IHTMLElement2 TempYs)
        {
            int YsX = -1;
            if (BrowserH < 1)
            {
                BrowserH = Screen.PrimaryScreen.WorkingArea.Height - ((IHTMLElement2)Document.documentElement).clientHeight;
            }
            int YsY = BrowserH;
            int dsa = ((IHTMLElement2)Document.body).scrollHeight;
            int YsWith = -1;
            int YsHeight = -1;
            TempYs = null;
            try
            {
                IHTMLElement2 TempElement = null;
                IHTMLElementCollection IeC = (IHTMLElementCollection)Document.all.tags("A");
                TempElement = (IHTMLElement2)IeC.item("a", 0);
                YsX = TempElement.getBoundingClientRect().left;
                YsY += TempElement.getBoundingClientRect().top;
                YsWith = TempElement.scrollWidth;
                YsHeight = TempElement.scrollHeight;
                TempYs = TempElement;
            }
            catch
            {
                return new Rectangle(-1, -1, -1, -1);
            }
            return new Rectangle(YsX, YsY, YsWith, YsHeight);
        }


/// <summary>
        /// 寻找子元素获取坐标
        /// </summary>
        /// <param name="TempYs">返回找到的元素</param>
        /// <param name="TextStr">table|blog.tianya.cn|a|天涯</param>
        /// <returns></returns>
        public Rectangle GetElementPointByMess(out IHTMLElement2 TempYs, string TextStr = "")
        {
            int YsX = -1;
            if (BrowserH < 1)
            {
                BrowserH = Screen.PrimaryScreen.WorkingArea.Height - ((IHTMLElement2)Document.documentElement).clientHeight;
            }
            int YsY = BrowserH;
            int dsa = ((IHTMLElement2)Document.body).scrollHeight;
            int YsWith = -1;
            int YsHeight = -1;
            TempYs = null;
            try
            {
                if (TextStr != "")
                {
                    IHTMLElement2 TempElement = null;
                    foreach (IHTMLElement i in Document.getElementsByTagName(TextStr.Split('|')[0].Trim()))
                    {
                        if (i.innerText != null && i.innerText.Contains(TextStr.Split('|')[1]))
                        {
                            foreach (IHTMLElement y in (IHTMLElementCollection)((IHTMLElementCollection)i.all).tags("A"))//.GetElementsByName(TextStr.Split('|')[2].Trim()
                            {
                                if (y.innerText != null && y.innerText.Contains(TextStr.Split('|')[3]) && y.tagName == "A")
                                {
                                    TempElement = (IHTMLElement2)y;
                                    break;
                                }
                            }
                            if (TempElement != null)
                                break;
                        }
                    }
                    YsX = TempElement.getBoundingClientRect().left;
                    YsY += TempElement.getBoundingClientRect().top;
                    YsWith = TempElement.scrollWidth;
                    YsHeight = TempElement.scrollHeight;
                    TempYs = TempElement;
                }
            }
            catch
            {
                return new Rectangle(-1, -1, -1, -1);
            }
            return new Rectangle(YsX, YsY, YsWith, YsHeight);
        }

 //设置浏览器版本
                    if (!RegSetting.SetReg(BrowserEnvironment_T[Rd.Next(BrowserEnvironment_T.Count)]))
                        continue;
                    MainForm.DisMes("伪装浏览器完成,启动浏览器中...");


//移动至输入框
                    IHTMLElement2 TempIH = null;
                    Rectangle Rt1 = NowBroswer.GetElementPointByMess(out TempIH, BroswerConfig[7].Substring(BroswerConfig[7].IndexOf("|") + 1), "");
                    MainForm.DisMes("移动至输入框...随机路径...");
                    if (MainForm.StopAll)
                        return;
                    MouseMove(new Point(Rd.Next(Rt1.X + 10, Rt1.X + Rt1.Width - 10), Rd.Next(Rt1.Y + 10, Rt1.Y + Rt1.Height - 10)));
                    if (MainForm.StopAll)
                        return;
                    MainForm.DisMes("点击鼠标左键");

支持格式替换。。。这个应该能明白。。。 好吧 那个自动判断输入出错的忘记加上了 以后加上。。。 这东西用 可连数据库 可用代理。。。 vps 20多台 跑了 3天没任何问题 就代理验证的服务器有点问题 重启代理服务器 这20多台vps又开始了。。。 就是求点下载分。。。我容易么。。。
加载更多回复(6)
KstCMS网站源码 v1.0.0.0,KstCMS企业建站系统是基于.NET3.5框架,采用VS10开发的,内容管理主要分为5大部分,分别是单页管理、产品管理、文章管理、图片管理及下载管理,目前单页、产品、文章部分相对比较完善,KstCMS已应用开发了众个企业网站,在官方网站上有着大量的应用案例,KstCMS的开发是出于提供网站建设效率及SEO而开发的企业网站管理系统,所以使用KSTCMS建站可以大大提效网站建设效率... 系统特点: 1.支持动态或静态(分类生成HTML静态网页)前端网页。 2.前端网页风格完全掌握在您的手里,只需懂HTML不需JAVASCRIPT及后端。 3.系统标签数量少,有使用范例,通过系统标签创建自定义标签,使用方便。 4.后台操作采单自定义,可以内嵌其它应用链接。 5.角色权限分组,多用户。 6.产品字段自定义扩展,与不同的产品类别邦定,即可管理不用类型的产品属性。 7.产品描述字段扩展 8.MATE关键字可以深入写到栏目,单页,文章,产品分类,产品描述页面中,优网页更灵活。 适合人员: 懂HTML、CSS的网页设计师,不需懂JAVASCRIPT及后台编程,多人流水化建站利器。 [b]注附:本软件提供C# 源码,仅供学习使用。[/b] 本地测试后台网址: http://localhost/kstcms_manager/ 在线测试后台网址:http://okt-kstcms.host1.kstnet.net/KstCMS_Manager/ 用户名:admin 密码:l0b0d8v4 (字母数字隔开)

110,536

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧