webBrowser加载完成的事件问题不解,不知到底啥时完是加载完了。

问题描述

privatevoidwebBrowser_DocumentCompleted(objectsender,WebBrowserDocumentCompletedEventArgse){if(webBrowser.ReadyState<WebBrowserReadyState.Complete||webBrowser.Url.ToString()==LastUrl)return;//每个URL运行一次LastUrl=webBrowser.Url.ToString();if(LastUrl=="https://s.taobao.com/"){webBrowser.Document.GetElementById("q").InnerText="发电机";HtmlElementhtmle=webBrowser.Document.GetElementsByTagName("button")[0];htmle.InvokeMember("click");//这里点击搜索后}/*问题在下面哪一句获取div。我想的是,上面的点击完搜索后重新加载页面执行后应该有新的DOM数据。可这里没有真实的数据。还是和第一次加载的DOM是一样的?要何解呢?*/varpage=this.webBrowser.Document.GetElementsByTagName("div");}

解决方案

解决方案二:
现在的前端,通过ajax、websocket等等机制的数据服务和html异步访问很多,不是简单地下载页面。
解决方案三:
你要是想“偷窥”点什么东西,那么就深入一点、具体一点,去看懂它的源代码。不要总是套用5年前的那种思路。
解决方案四:
引用2楼sp1234的回复:

你要是想“偷窥”点什么东西,那么就深入一点、具体一点,去看懂它的源代码。不要总是套用5年前的那种思路。

需求是把搜索出的发电机关键词的数据全部抓出来。看了他的源码生存的是在脚本里面。脚本里面的东西有点乱。需要生存后的HTML代码。有啥好思路呢?
解决方案五:
引用3楼chirea的回复:

Quote: 引用2楼sp1234的回复:
你要是想“偷窥”点什么东西,那么就深入一点、具体一点,去看懂它的源代码。不要总是套用5年前的那种思路。

需求是把搜索出的发电机关键词的数据全部抓出来。看了他的源码生存的是在脚本里面。脚本里面的东西有点乱。需要生存后的HTML代码。有啥好思路呢?

复杂需求就使用DOM记解析,简单的就直接html文本解析
解决方案六:
判断是否加载完成还真不是个简单事
解决方案七:
如果是脚本生成的东西,要么读懂程序hook,要么setInterval
解决方案八:
用webrequest仔细抓包看结果什么页面的构造提交提取

时间: 2024-09-18 13:47:37

webBrowser加载完成的事件问题不解,不知到底啥时完是加载完了。的相关文章

关于iframe编辑器如何在加载完成触发事件的问题

问题描述 关于iframe编辑器如何在加载完成触发事件的问题 我用的是新浪论坛老版的编辑器,iframe存值,我用js获取其中的内容,获取的是为空,审查元素,知道了获取的是iframe没加载的,然后查了相关资料,用onload去获取,可是不管用,事件反而触发不了了,求解答,怎么获取iframe编辑器中的内容 解决方案 判断iframe加载完成的事件IFrame 加载网页完成事件iframe 加载完成 解决方案二: 应该有api来获取内容吧..自己操作得在设置了iframe的值后才能获取

jQuery结合AJAX之在页面滚动时从服务器加载数据

  这篇文章主要介绍了jQuery结合AJAX之在页面滚动时从服务器加载数据,文中示例服务器端为C#程序,需要的朋友可以参考下 简介 文本将演示怎么在滚动滚动条时从服务器端下载数据.用AJAX技术从服务器端加载数据有助于改善任何web应用的性能表现,因为在打开页面时,只有一屏的数据从服务器端加载了,需要更多的数据时,可以随着用户滚动滚动条再从服务器端加载. 背景 是Facebook促使我写出了在滚动条滚动时再从服务器加载数据的代码.浏览facebook时,我很惊讶的发现当我滚动页面时,新的来自服

程序启动时,屏幕加载时背景设置

问题描述 各位老师,请问:VB.net程序启动时,屏幕加载时背景怎样设置为任意图片? 解决方案 解决方案二:Me.BackGroundImage=System.Drawing.Image.FromFile("路径") 解决方案三:参考:SetMe.Picture=LoadPicture("D:testtest.jpg") 或者解决方案四:引用1楼wangnaisheng的回复: Me.BackGroundImage=System.Drawing.Image.From

android-当旋转Android屏幕时App自动加载数据

问题描述 当旋转Android屏幕时App自动加载数据 我打开我的应用时数据会自动加载,我的问题是:当屏幕是垂直的时候应用会从服务器上加载下数据,但当屏幕旋转的时候,它又重新加载数据,在垂直状态又重新加载,旋转也是,一直如此.我应该怎么做才能让它不重新加载数据,希望大家能帮我看看,应该如何处理. 程序代码如下: public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setCont

ztree异步加载设置isParent:true后没有子节点的父节点循环加载整棵树

问题描述 ztree异步加载设置isParent:true后没有子节点的父节点循环加载整棵树 问下有没有什么解决方案? 解决方案 服务器点判断没有子节点设置isParent为false不就好了? 解决方案二: 初始化setting.async.otherParam = {""zTreeIsLoad"":false}; //加载后 function onAsyncSuccess(event treeId treeNode msg){ var treeObj = $.f

Android的Fragment 进入时显示正在加载

问题描述 Android的Fragment 进入时显示正在加载 像微信那样,地址四个功能,点击尚为加载的Fragment显示 一个在加载的进度条(圆形的)不是ProgressDialog喔, 没有思路.

eclipse maven项目中一个war类型的项目加载进tomcat时,只加载了WEB-INF

问题描述 eclipse maven项目中一个war类型的项目加载进tomcat时,只加载了WEB-INF 我遇到这样一个问题,我有一个maven的项目,其中有一个war类型的子模块,当我想在tomcat7上面运行时,我查看了其下面的项目,发现仅仅是加载了WEB-INF文件夹里面只有classs文件也就是只有java跟resource中的东西没有webapp文件夹下的内容,甚至连其下面的web.xml文件都没有加载进来,JSP及其他文件夹都没有加载..

销毁单例-iOS退出登录问题,如何在退出登录时清空已加载的界面?

问题描述 iOS退出登录问题,如何在退出登录时清空已加载的界面? 请问有没有人做过退出登录,如何在退出登录时清空已经加载的页面?比如登录进来后进入一个tabBar(单例),如何在退出登录时将这个单例也销毁掉? 解决方案 你说的是应该是从主页面退出到登录注册界面吧?说实话我没这样做过,因为没意义啊退一步,如果你把真的把单例销毁了,登进去又要重新生成-- 解决方案二: 可以设置监听,在退出登录时发送监听,但是也感觉你这个操作没有必要,再下次用户登录的时候会请求心得数据将原来的数据覆盖,若是退出也会自

android开发eclipse导入design,运行时出错无法加载布局

问题描述 android开发eclipse导入design,运行时出错无法加载布局 xml代码如下 <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent" > <android.support