admin管理员组

文章数量:1566638

2024年7月20日发(作者:)

基于BHO的淘宝网账户自动登录系统研究与实现

摘 要:目前在淘宝网上大中型店铺的账户一般由多名店铺员工

登录以进行日常工作,如何对淘宝店铺登录账号和密码进行有效

管理成为一个亟待解决的问题。基于BHO(浏览器助手对象)

插件技术,提出了淘宝网账户自动登录系统的系统结构设计和功

能模块设计方案,并对淘宝网账户自动登录系统的网站网址识别

和网页元素分析等关键技术进行了研究,重点阐述了网页元素分

析。系统利用网站网址识别、网页元素分析能够为客户提供可靠、

安全的账户管理功能和快速、方便的账户使用体验。

关键词:BHO插件技术;淘宝网;账户自动登录;密码保

护;网站网址识别;网页元素分析

0 引言

电子商务时代的到来,使传统商家的交易活动发生了巨大

的变化。越来越多的商家加入到电子商务的环境中。目前淘宝网

是中国C2C电子商务市场份额占有率最大的购物平台。而通过

网络登录淘宝网进行办公所必需的是淘宝网登录账户和密码。淘

宝网登录账户和密码就像是一把进入电子商务办公的“黄金钥

匙”。只有正确地输入了已注册的个人账户名和密码才能登录你

需要进入的淘宝网店铺,进行后续的活动。截止2010年底在淘

宝网注册的账户已达到3.7亿个。所以个人账户这把“钥匙”对

卖家登录淘宝网店铺是非常的重要。

伴随店铺每天交易次数的增加,日常的工作将由店铺人员分

工来完成。所以每个员工都需要使用到这个登录账户。自然,店

铺账户在使用过程中会出现两个问题或者是需求。第一,作为一

个店铺的登录到淘宝公共账户,大量的店铺员工需要并且只能使

用这个公共账户,这样的情况,如何保护店铺的公共账户不被恶

意修改、泄露?因为以上的行为发生将导致店铺巨大甚至毁灭性

的灾难。这就是第一个需求,如何有效地保护网站登录账户和密

码?第二,部分店铺对于公共账户目前的管理方法就是个别或者

少数高级别的职员掌握这个公共账户的密码。每次店铺其它不拥

有公共账户密码的员工需要登录网站账户的时候,那些拥有密码

的员工就来为其手工输入。很明显,这是一种效率极其低下而且

无法保证密码不泄露的被迫行为。所以新的需求就出现了,如何

快捷地登录网站账户?

本文提出的淘宝网账户自动登录系统的系统结构设计和

功能模块设计方案,就能有效地解决以上两个问题。

1 BHO(浏览器辅助对象)

BHO(Browser Helper Object,浏览器辅助对象,简称BHO)

是微软推出的作为浏览器对第三方程序员开放交互接口的业界

标准,通过简单的代码就可以进入浏览器领域的“交互接口”

(INTERACTIVED Interface)。通过这个接口,程序员可以通过

BHO编写代码获取浏览器的行为或者触发浏览器的行为,甚至

是执行个性化的行为。利用BHO的交互特性,程序员还可以用

代码控制浏览器行为,比如修改替换浏览器工具栏,添加自己的

程序按钮等。这些在系统看来都是没有问题的。BHO被微软推

出的目的是为了更好地帮助程序员打造个性化浏览器,减少与IE

浏览器内核底层打交道,以使得程序员能够与IE内核的浏览器

更简洁地交互。

浏览器框架和BHO组件BHO是一种特殊的COM组件,利

用这样的组件可以定制并控制IE的运行。现在很多IE个性化工

具就是利用BHO来实现的。BHO的生存周期与IE进程是一致

的。当一个IE窗体被打开,一个BHO对象也同时被生成。IE

窗体被关闭,其对应的BHO对象占用的系统资源也会释放出来。

浏览器调用BHO工作原理如图1。

2 系统结构与功能模块设计

2.1 系统结构

系统基于BHO插件技术设计,实现其自动登录淘宝网账户

的功能主要需要后台数据的管理以及前台BHO插件。

当IE启动时,本系统的BHO插件也会自动生成。BHO会

从数据库中去获取数据,一个是登录网站网址信息和网页关键元

素信息,一个是登录账户密码信息。这些数据库中的信息就需要

一个后台的管理模块来管理控制,如图2所示。

2.2 系统功能分析与模块设计

根据以上系统结构概述,系统的两大功能模块就是BHO插

件模块和后台数据管理模块。

BHO插件模块中详细功能包含有:登录网站网址识别、

登录网站网址页面元素分析、网站登录账户和密码的输入。

后台数据管理模块中的详细功能包含:登录网站网址前缀

管理、登录网站登录界面登录账户名和登录密码页面元素标示名

管理、网站登录账户和密码管理。系统功能模块如图3所示。

3 系统实现

系统功能的实现首先由拥有网站登录账户和密码的人通

过后台设置网站登录网址和网页输入账户和密码的网页元素名,

存储登录网站的用户名和密码。然后,在员工通过IE浏览器访

问网站的时候,系统BHO插件自动生成。网站页面加载完毕后,

BHO插件就会立即去比对此时的网页地址是不是数据库中已经

存储的登录网站的登录页面网址。如果是的,BHO插件将从数

据库中取出此网站的登录账号和密码,但只显示出账户给员工选

择。员工选择完一个登录的账户,BHO插件就会自动提交登录

事件,从而完成网站的账户自动登录。如图4所示。

整个登录过程,员工只能看到登录的账户而密码无法看

到。这样公共账户的安全性得以保证。同时,整个过程,员工只

需要选择需登录的账户(若登录账户唯一时,员工甚至无需选择

要登录的账户),BHO插件就可以自动登录。即在保证账户密码

安全的同时,使用操作也异常的便捷。前台BHO插件效果如图

5所示。

3.1 网站登录网址分析

要实现登录网站的自动登录,首要的是系统能自动识别正

在登录的网站是不是需要登录的网站。识别网站的方式就是通过

正在登录网站的网址。所以将要正在访问的网站的登录网址和数

据库中存储登录网址进行比对,如果一致就将系统的账户密码从

数据库中取出。但是在实际应用中,有一个问题被发现,那就是

网站的登录页面的网页地址是变化的。如淘宝网的登录网页网

址:

:///member/?f=top&redirectURL=

http%3A%2F%%2F

:///member/?redirectURL=http%3

A%2F%%2Fmy_

经过比对发现,登录网页地址的前缀是完全相同,有差异的

是后缀。所以在系统中存储的网站登录页面地址是其前缀。同时,

BHO插件在对比正在访问的网址时,也是将其前缀和数据库中

存储的登录网站页面网址前缀比较。

登录网址比对在BHO插件OnDocumentComplete(object

pDisp,ref object URL)方法中实现。即网站网页加载完成的时

候,BHO插件就会去比对网址。这样的比对的另一个好处就是绝

对不会在访问钓鱼网站的时候将登录账户和密码泄露出去。

3.2 网页元素分析

网页元素分析就是对登录网站页面HTML元素的分析。基

于HTML结构解析的信息抽取的特点是,将Web文档转换成反映

HTML文件层次结构的解析树。从网页元素中找到输入登录账户

的输入框,输入登录密码的输入框,以及提交登录的Button控

件。

对这3个重要登录控件的查找就是对HTML元素DOM树的

遍历。如图6。当遍历到了登录账户和密码的两个文本框,系统

就将选择的客户账户和密码复制到网页的这两个控件上,同时遍

历出登录的按钮控件,提交其点击事件,以完成自动登录。

3.3 数据加密

本系统的最重要的功能是保护网站登录的密码,为了防止登

录密码泄露而导致的危害,本系统除了在业务逻辑上登录密码不

会被使用者知道,同时系统在密码的存储上也进行了密码的加密

操作。

在后台程序中,登录账号和密码的管理最终反映为将其存

储到数据库中,在存储之前系统使用MD5加密算法对登录密码

进行加密。所以对于不拥有网站登录账户和密码的人唯有在店铺

内部使用BHO插件才能成功登录网站。

4 结束语

本淘宝网账户自动登录系统基于BHO插件技术,综合网址

比对和页面元素分析,使公共登录账户得到管理,有极强的防泄

露性和便捷性,能够有效地解决网站公共登录账户密码在使用过

程中泄露及操作繁琐的问题。

参考文献:

1] MSDN :Browser

Extensions[EB/OL]./zh-cn/library/aa7535

87(en-us,VS.85).aspx.

[2] 孔岚.用托管代码制作浏览器扩展控件[J].电脑学

习,2008(3).

[3] JON ing Web Programming with

HTML,XHTML[M].and

:978.

[4] 陈琼,苏文健.基于网页结构树的Web信息抽取方法[J].

计算机工程,2004(20).

[5] 李彦刚,魏海平,侯兴华.基于HTMLParser的Web信息

抽取系统的设计与实现[J].辽宁石油化工大学学报,2006(2).

本文标签: 登录账户网站密码浏览器