该楼层疑似违规已被系统折叠 隐藏此楼查看此楼

至于HttpRequest大家都知道,他不能获取网页的Ajax异步数据,代码如下:

using System;

using System.Collections.Generic;

using System.Text;

using System.Windows.Forms;

using System.IO;

using System.Collections;

using System.Threading;

namespace ConsoleApplication1

{

public class AsynWebRequest

{

public Uri URL { get; set; }

private WebBrowser browser;

public AsynWebRequest(string url)

{

this.URL = new Uri(url);

}

public void Navigate()

{

if (this.URL == null)

throw new Exception("URL cannot be empty");

this.browser = new WebBrowser();

this.browser.ScriptErrorsSuppressed = true;

this.browser.DocumentCompleted += (s, e) =>

{

if (e.Url.Equals(this.browser.Url))

{

RequestCompletedEventArgs arg = new RequestCompletedEventArgs

{

Document = this.browser.Document

};

RequestCompleted(s, arg);

}

};

this.browser.Url = this.URL;

}

/// /// 获取具有指定标识符的节点内容///

/// 元素的id或name属性

///

public string this[string identifier]

{

get

{

if (this.RequestCompleted == null)

{

throw new Exception("The document has not been completely loaded");

}

return this.browser.Document.GetElementById(identifier).InnerText;

}

}

public delegate void RequestCompletedEventHandler(object sender, RequestCompletedEventArgs e);

public event RequestCompletedEventHandler RequestCompleted;

public class RequestCompletedEventArgs

{

public HtmlDocument Document { get; set; }

}

[STAThread]

static void Main(string[] args)

{

var awr = new AsynWebRequest("http://stockhtm.finance.qq.com/sstock/ggcx/300101.shtml");

awr.RequestCompleted += (s, a) =>

{

MessageBox.Show(a.Document.GetElementById("main-4").InnerText); MessageBox.Show(awr["main-4"]);

};

awr.Navigate();

}

}

}

webbrowser 检测ajax,控制台获取网页AJAX的返回数据,用的WebBroWser相关推荐

  1. 解决paramiko获取远程脚本延时返回数据的问题

    解决paramiko获取远程脚本延时返回数据的问题 参考文章: (1)解决paramiko获取远程脚本延时返回数据的问题 (2)https://www.cnblogs.com/liushi-Oscar ...

  2. java数据返回到界面,java后台获取网页ajax数据和返回数据简单源码

    呼唤远方 1新建一个servlet xml中相应配置(一般自动)2创建service方法3接受参数,做操作,返回数据比如页面发送ajax请求到SomeServlet$.post("SomeS ...

  3. ajax前台获取json,ajax与json 获取数据并在前台使用简单实例

    ajax与json 获取数据并在前台使用简单实例 发布于 2017-05-18 14:05:38 | 63 次阅读 | 评论: 0 | 来源: 网友投递 AjaxAJAX即"Asynchro ...

  4. Ajax怎么获取天气,Ajax获取全国天气预报的API数据

    这次给大家带来Ajax获取全国天气预报的API数据,Ajax获取全国天气预报API数据的注意事项有哪些,下面就是实战案例,一起来看一下. 预览图(比较简单粗糙) 聚合数据全国天气预报接口:https: ...

  5. python autoit获取网页ajax数据_WebDriver + Python 调用AutoIt例子(实现139邮箱写信页的附件上传)...

    PS: 前提 1. 安装好webdriver下python实现的环境 2. 安装好Autoit(默认安装就可以了) 3. 另外需要一个139邮箱账号,脚本运行时上传的图片在附件里面 #coding:c ...

  6. .ajax get获取案例,$.ajax GET请求案例

    前端JS代码: $.ajax({ type: "GET", url: getRootPath() + "/getDatas.do", contentType: ...

  7. ajax实时获取股票信息,Ajax学习笔记03-模拟动态显示股票信息动态变化的小例子...

    模拟实现一个动态显示股票价格的经典例子: 实体类 :Stock.java 由于篇幅问题,此处省略了get Set 方法 /** * Created by IntelliJ IDEA. * User: ...

  8. 如何使用表格自动获取网页上的表格数据,并自动刷新

    简介 本文介绍了如何通过Excel获取每日的基金净值,并自动刷新,方便各个平台的基金进行统计.这里假设从平台1在2019年8月20日购买编号为000001基金100元,从平台2在2019年8月19日购 ...

  9. ajax获取网页新闻,基于Ajax的新闻网页动态数据的抓取方法及系统

    主权项: 1.基于Ajax的新闻网页动态数据的抓取方法,其特征是,包括如下步骤:步骤(101):建立新闻网页爬取内容数据库,设置新闻网页爬取内容数据库的编码方式:获得待抓取新闻网页的新闻列表页面的UR ...

最新文章

  1. 脚踏开关 FOOTSwitch
  2. java 什么是哨兵_Java中的Redis 哨兵高可用性
  3. 《系统集成项目管理工程师》必背100个知识点-15项目章程ITTO
  4. 从菜鸟成为数据科学家的养成方案
  5. modelsim(1):经常使用的测试设计的结构
  6. Docker+Nginx部署Angular
  7. Python 装饰器理解
  8. 一些js/css动画 mark
  9. HBase之HFile索引机制
  10. 金融数据分析与挖掘实战1.7-1.8
  11. android 将bitmap存为 bmp格式图片大小,把bitmap保存成 BMP的格式 并且位深度为1
  12. 检测用户浏览器是否支持cookie
  13. 如何将nupkg离线安装包安装到VS2017、9
  14. 查看opencv版本信息
  15. 因特尔显卡自定义分辨率_Win10创建自定义分辨率的方法教程
  16. Android SeekBar 自定义 背景图片 和 滑块图片
  17. 黑猴子的家:Linux VIM 编辑器
  18. 利用 IP 扩展访问列表实现应用服务的访问限制
  19. 你的好帮手,优质chatgpt镜像网站
  20. [分享]蓝屏代码查询及代码分析

热门文章

  1. linux内核时钟工作原理,linux内核的时钟机制
  2. min java_LeetCode算法题-Min Stack(Java实现)
  3. 单片机成长之路(51基础篇) - 013 MCS-51单片机控制详解–T2MOD
  4. 知识点:图说 Mysql 权限管理
  5. 常用Maven插件介绍(下)(转)
  6. HDU 5876 关于补图的bfs
  7. ios6.0,程序为横屏,出现闪退
  8. 微软提出VLMo:用“模态混合专家”进行统一的视觉语言预训练!即将开源!
  9. 一张图带你了解python
  10. 0基础自学Python,有哪些避坑经验?