- 1、本文档共8页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
基干网页元素论坛帖子群发技术
基于网页元素的论坛帖子群发技术 摘要:随着因特网的发展,出现了诸如手机短信、Email、即时通讯、论坛等基于互联网的交流工具,用户广泛。利用这些工具的信息群发系统可以向大量受众发送网络信息,在企业推广、舆论宣传等方面具有重要的应用价值。作为网络信息群发系统的一个子课题,本文拟针对国内流行的Discuz论坛作研究并实现一个基于网页元素的论坛帖子群发技术,该技术可以支持同时对多个Discuz论坛完成账号注册、登录、帖子群发、帖子持续回复、注销退出等操作。与现有常见的论坛帖子群发系统相比,本文研究并实现的论坛帖子群发技术基于网页元素,具有稳定可靠、实现方便、易于扩展等优点
关键词:信息群发,论坛,网页元素
0.研究背景
随着国际互联网和移动通信网的发展,人们已习惯于使用手机短信、即时通讯工具、电子邮件、论坛帖子等基于网络的通讯工具(以下简称网络通讯工具)进行信息交流。网络通讯工具具有使用方便、成本低、受众面广等优点
网络信息群发系统定义为一种可以向移动通信手机用户和国际互联网用户批量发送手机短信、电子邮件、即时通信消息、论坛帖子等网络信息的软硬件平台,在短时间内充分利用各类网络资源的发送能力,将己方设计好的信息送达上述目标受众群体
网络信息群发系统具有极高的应用价值,例如企业使用网络信息群发系统向所属员工发送网络信息可以达到日常管理的目的,政府机构向一定范围的民众发送网络信息可以达到引导舆论的目的,一国向敌方或第三方民众发送网络信息可以达到影响敌方或第三方民众心理的作用,通过研究网络信息群发技术的原理可以采取技术手段屏蔽非法网络信息群发技术,等等
论坛帖子群发系统属于网络信息群发系统的一个子系统。论坛群发系统又名灌水机、发帖机等,顾名思义,它是可以实现同时向多个论坛注册账号、登录、发送帖子、回复帖子等操作的软件,是网络推广的一种手段,一般用于商业目的或者舆论宣传。论坛帖子群发系统一般由注册、发帖、监控等几个模块组成,用户通过软件的窗口就能完成帖子群发,其他的工作由后台程序处理,一般比较好的论坛帖子群发系统能够支持主流的论坛技术,如Discuz、PHPwind、Dvbbs等。本文主要针对目前国内主流的Discuz论坛系统研究论坛帖子群发技术
1.研究现状
一般的论坛帖子群发系统操作过程是构造用户计算机向论坛服务器提交的post表单内容,实现代码对论坛的操作。C#一般使用类HttpWebRequest实现模拟连接论坛以及向服务器提交post表单,使用类HttpWebResponse实现接受服务器的响应信息,使用类StreamReader实现响应信息的读取。要实现同时对多个不同论坛的不同版块发帖,则要利用编程中的多线程机制,循环上诉单次发帖过程即可,但是模拟报文中必须提交一个值formhash,而这个值是Discuz论坛系统根据登录系统的用户信息生成的,这个值较难获取
2.基于网页元素的论坛帖子群发技术
2.1 Discuz论坛发帖中涉及的网页元素
本课题基于网页元素的论坛帖子群发技术中的网页元素是指在Discuz论坛网页中需要用户输入、选择、点击的网页html基本元素,主要是指表单元素和链接元素。用户对论坛的操作就是通过这些网页元素进行的。如在登录页面中,基本的网页元素有账号输入框、密码输入框、登录按钮,为了防止恶意自动灌水,很多Discuz论坛都设置了验证码输入框
2.2基于网页元素的单个帖子发送技术
基于网页元素实现登录的原理是用.net framework中的类HtmlElement代表Webbrowser中的密码输入框、账号输入框、提交按钮等网页元素,然后用类HtmlElement中的方法填入这些表单元素的值并提交,从而实现登录。下面通过利用控件Webbrowser登录论坛“小文之家“的例子来对基于网页元素的单条帖子发送原理进行详细分析
从本例可以看出,用控件Webbrowser登录论坛非常简单,主要的代码也就六行,这种方法利用的是网页表单元素填充机制
分析以上的网页源代码和C#代码,可知用C#的web类HtmlElement的三个对象可以分别代表账号输入框、密码输入框、登录按钮等网页元素,用HtmlElement的方法SetAttribute给这些表单赋上相应的值,如给账号输入框赋上账号,给密码输入框赋上密码,而 HtmlElement的方法InvokeMember可以模拟各种网页操作,如InvokeMember(”click”)可以模拟对按钮进行点击,用它就可以向服务器提交表单中的值,从而实现登录。以上举的是一个登录论坛的例子,发帖与登录的原理是一样的,用控件Webbrowser模拟发帖实际上相当于模拟人工直接在网页上填写表单并提交
基于网页元素
文档评论(0)