《vb关于webbrowser相关操作大全(最新整理by阿拉蕾)》由会员分享,可在线阅读,更多相关《vb关于webbrowser相关操作大全(最新整理by阿拉蕾)(28页珍藏版)》请在金锄头文库上搜索。
1、VB关于webbrowser相关操作大全1、WebBrowser的方法、属性、事件22、提取网页源码33、防止新窗口里头打开网页44、新Webbrowser控件打开链接55、去掉滚动条56、禁止鼠标右键67、如何获得网页的内容68、多框架框架页面访问79、获得浏览器信息710、弹出Webbrowser消息窗口811、向Webbrowser中写入HTML内容的几种方法812、控制页面滚动913、判断页面是否可以前进后退914、如何获得网页中被选中部分的HTML1015、Navigate的参数调用1116、本地文件收藏夹操作1117、让Webbrowser全屏1218、选择网页上的内容1219、用
2、IE来下载文件1320、Webbrowser确定窗口对话框1421、禁止WebBrowser控件中网页弹窗1422、取得源码调试正常运行错误1523、页面元素操作15例0: 查看网页元素15例1: 给username文本框内填充内容:15例2: 找到提交按钮并点击16例3: 难度的16例4: 模拟鼠标点击来点击按钮17例5: 根据ID直接CLICK17例6: 给列表单选项赋值17例7: 网页自动填写表单注册1824、网页按钮的终极控制2022、执行网页中的脚本2123、提取字符串或网页源代码中指定的资源(可利用这一函数做文章采集器)2324、中文汉字转化为URL编码2525、获取网页中的验证码
3、2726、WebBrowser控件中网页按钮的点击2827、其它281、 WebBrowser的方法、属性、事件WebBrowser的8个方法和13个属性,以及它们的功能:方法 说明GoBack 相当于IE的“后退”按钮,使你在当前历史列表中后退一项GoForward 相当于IE的“前进”按钮,使你在当前历史列表中前进一项GoHome 相当于IE的“主页”按钮,连接用户默认的主页GoSearch 相当于IE的“搜索”按钮,连接用户默认的搜索页面Navigate 连接到指定的URLRefresh 刷新当前页面Refresh2 同上,只是可以指定刷新级别,所指定的刷新级别的值来自RefreshCo
4、nstants枚举表,该表定义在ExDisp.h中,可以指定的不同值如下:REFRESH_NORMAL 执行简单的刷新,不将HTTP pragma: no-cache头发送给服务器REFRESH_IFEXPIRED 只有在网页过期后才进行简单的刷新REFRESH_CONTINUE 仅作内部使用。在MSDN里写着DO NOT USE! 请勿使用REFRESH_COMPLETELY 将包含pragma: no-cache头的请求发送到服务器Stop 相当于IE的“停止”按钮,停止当前页面及其内容的载入属性 说明Application 如果该对象有效,则返回掌管WebBrowser控件的应用程序实现
5、的自动化对象(IDispatch)。如果在宿主对象中自动化对象无效,这个程序将返回WebBrowser控件的自动化对象Parent 返回WebBrowser控件的父自动化对象,通常是一个容器,例如是宿主或IE窗口Container 返回WebBrowser控件容器的自动化对象。通常该值与Parent属性返回的值相同Document 为活动的文档返回自动化对象。如果HTML当前正被显示在WebBrowser中,则Document属性提供对DHTML Object Model的访问途径TopLevelContainer 返回一个Boolean值,表明IE是否是WebBrowser控件顶层容器,是就
6、返回trueType 返回已被WebBrowser控件加载的对象的类型。例如:如果加载.doc文件,就会返回Microsoft Word DocumentLeft 返回或设置WebBrowser控件窗口的内部左边与容器窗口左边的距离Top 返回或设置WebBrowser控件窗口的内部左边与容器窗口顶边的距离Width 返回或设置WebBrowser窗口的宽度,以像素为单位Height 返回或设置WebBrowser窗口的高度,以像素为单位LocationName 返回一个字符串,该字符串包含着WebBrowser当前显示的资源的名称,如果资源是网页就是网页的标题;如果是文件或文件夹,就是文件或
7、文件夹的名称LocationURL 返回WebBrowser当前正在显示的资源的URLBusy 返回一个Boolean值,说明WebBrowser当前是否正在加载URL,如果返回true就可以使用stop方法来撤销正在执行的访问操作事件 说明Private Events DescriptionBeforeNavigate2 导航发生前激发,刷新时不激发CommandStateChange 当命令的激活状态改变时激发。它表明何时激活或关闭Back和Forward菜单项或按钮DocumentComplete 当整个文档完成是激发,刷新页面不激发DownloadBegin 当某项下载操作已经开始后激
8、发,刷新也可激发此事件DownloadComplete 当某项下载操作已经完成后激发,刷新也可激发此事件NavigateComplete2 导航完成后激发,刷新时不激发NewWindow2 在创建新窗口以前激发OnFullScreen 当FullScreen属性改变时激发。该事件采用VARIENT_BOOL的一个输入参数来指示IE是全屏显示方式(VARIENT_TRUE)还是普通显示方式(VARIENT_FALSE)OnMenuBar 改变MenuBar的属性时激发,标示参数是VARIENT_BOOL类型的。VARIANT_TRUE是可见,VARIANT_ FALSE是隐藏OnQuit 无论是
9、用户关闭浏览器还是开发者调用Quit方法,当IE退出时就会激发OnStatusBar 与OnMenuBar调用方法相同,标示状态栏是否可见。OnToolBar 调用方法同上,标示工具栏是否可见。OnVisible 控制窗口的可见或隐藏,也使用一个VARIENT_BOOL类型的参数StatusTextChange 如果要改变状态栏中的文字,这个事件就会被激发,但它并不理会程序是否有状态栏TitleChange Title有效或改变时激发2、 提取网页源码方法1:XMLHTTP对象Public Function HtmlStr$(URL$) 提取网页源码函数 Dim XmlHttp Set Xml
10、Http = CreateObject(Microsoft.XMLHTTP) XmlHttp.Open GET, URL, False XmlHttp.Send If XmlHttp.ReadyState = 4 Then HtmlStr = StrConv(XmlHttp.Responsebody, vbUnicode)End Function方法2: WEBBROWSER控件Public Function WebDaima(WebBrowser, BuFen) 获取WebBrowser控件中网页源代码 Select Case BuFen Case Body 只获取与之间的代码 WebDai
11、ma = WebBrowser.Document.body.innerhtml Case All 获取整个网页源代码 WebDaima = WebBrowser.Document.documentelement.outerhtml Case Else WebDaima = WebBrowser.Document.documentelement.outerhtml End SelectEnd FunctionDim strweb As Stringstrweb=WebDaima(frmIndex.WebBrowser1,All) 获取整个网页源代码strweb=WebDaima(frmIndex
12、.WebBrowser1,Body) 只获取body中源代码3、 防止新窗口里头打开网页代码1:Private Sub WebBrowser1_NewWindow2(ppDisp As Object, Cancel As Boolean)Dim frm As Form1Set frm = New Form1frm.Visible = TrueSet ppDisp = frm.WebBrowser1.objectEnd Sub代码2:有这段代码, 有许多网页会出错,经常提示脚本错误,可以用silent属性为True来屏蔽,不过也有些不足!Private Sub WebBrowser1_NewWi
13、ndow2(ppDisp As Object, Cancel As Boolean)Cancel = TrueWebBrowser1.Navigate2 WebBrowser1.Document.activeElement.hrefEnd Sub代码3:Private Sub WebBrowser1_NewWindow2(ppDisp As Object, Cancel As Boolean)On Error Resume NextDim frmWB As Form1Set frmWB = New Form1frmWB.WebBrowser1.RegisterAsBrowser = TrueS
14、et ppDisp = frmWB.WebBrowser1.objectfrmWB.Visible = TruefrmWB.Top = Form1.TopfrmWB.Left = Form1.LeftfrmWB.Width = Form1.WidthfrmWB.Height = Form1.HeightEnd Sub功能差不多,任选一个。4、 新Webbrowser控件打开链接Private Sub WebBrowser1_NewWindow2(ppDisp As Object, Cancel As Boolean) Set ppDisp = WebPageAd.ObjectEnd Sub5、 去掉滚动条Private Sub WebBrowser1_DocumentComplete(ByVal pDisp As Object, URL As Variant)WebBrowser1.Document.Body.Scroll = noEnd Sub实际上上面的效果不咋地,如果懂得HTML知识, 你可以在读取网页的时候,读取HTML源码, 查找替换, 再写入只需在 之间插入代码: 即可。其中x表示水平滚动条,将其改为y的话就可以隐藏垂直滚动条。当然也有其他方法, 比如修改网页的尺寸呀? 有的时候部分元素的居中改为左对齐