易截截图软件、单文件、免安装、纯绿色、仅160KB
热门标签: c c# c++ asp asp.net linux php jsp java vb Python Ruby mysql sql access Sqlite sqlserver delphi javascript Oracle ajax wap mssql html css flash flex dreamweaver xml
 最新文章 : c#

用C#抓取AJAX页面的内容

现在的网页有相当一部分是采用了AJAX技术,不管是采用C#中的WebClient还是HttpRequest都得不到正确的结果,因为这些脚本是在服务器发送完毕后才执行的!
但我们用IE浏览页面时是正常的,所以解决方法只有1个就是采用WebBrowser控件
但是使用Webbrowser你会发现,在DownloadComplete事件中,你根本无法知道页面何时才算是真正的加载完毕!
当然个别有Frame的网页可能会触发多次Complete,即使你采用计数器的办法,即在Navigated事件中++,而在DownloadComplete中做--,也仍然不能得到JS完成执行后的结果,我开始也感觉到非常奇怪,直到后来GG了相关AJAX的文章,明白了其中原委.
最终解决方案就是利用WebBrowser+Timer来解决抓取页面的问题
而其中的关键仍然是页面状态,我们可以利用webBrowser1.StatusText,如果返回"完成",表示页面加载完毕!
示例代码如下:
private void timer1_Tick(object sender, EventArgs e)
        {         
           
             textBox1.Text += webBrowser1.StatusText;     ......

用C#抓取AJAX页面的内容

现在的网页有相当一部分是采用了AJAX技术,不管是采用C#中的WebClient还是HttpRequest都得不到正确的结果,因为这些脚本是在服务器发送完毕后才执行的!
但我们用IE浏览页面时是正常的,所以解决方法只有1个就是采用WebBrowser控件
但是使用Webbrowser你会发现,在DownloadComplete事件中,你根本无法知道页面何时才算是真正的加载完毕!
当然个别有Frame的网页可能会触发多次Complete,即使你采用计数器的办法,即在Navigated事件中++,而在DownloadComplete中做--,也仍然不能得到JS完成执行后的结果,我开始也感觉到非常奇怪,直到后来GG了相关AJAX的文章,明白了其中原委.
最终解决方案就是利用WebBrowser+Timer来解决抓取页面的问题
而其中的关键仍然是页面状态,我们可以利用webBrowser1.StatusText,如果返回"完成",表示页面加载完毕!
示例代码如下:
private void timer1_Tick(object sender, EventArgs e)
        {         
           
             textBox1.Text += webBrowser1.StatusText;     ......

C#操作xml文件入门(后附示例源代码)

          ~/    在runat=server的控件中,自动的被解析为Request.ApplicationPath的值,是当前应用程序级程序的目录     在例子中是:/WebSite
          ./或者什么都不写:表示当前目录,./teacup.jpg和teacup.jpg都表示当前网页所在目录下的teacup.jpg文件
         ../表示上一层目录,比如http://www.cnblogs.com/../teacup.jpg就表示当前网页所在目录的上三层的目录下的一个teacup.jpg文件,
          /表示根目录,一般表示为:系统盘下的Inetpub\wwwroot
已知有一个XML文件(bookstore.xml)如下:
<?xml version="1.0" encoding="gb2312"?>
<bookstore>
<book genre="fantasy" ISBN="2-3631-4">
<title>Oberon's Legacy</title>
<author>Corets, Eva</author>
<price>5.95</price>
</book>
</bookstore>
1、往<bookstore>节点中插入一个<b ......

C#操作xml文件入门(后附示例源代码)

          ~/    在runat=server的控件中,自动的被解析为Request.ApplicationPath的值,是当前应用程序级程序的目录     在例子中是:/WebSite
          ./或者什么都不写:表示当前目录,./teacup.jpg和teacup.jpg都表示当前网页所在目录下的teacup.jpg文件
         ../表示上一层目录,比如http://www.cnblogs.com/../teacup.jpg就表示当前网页所在目录的上三层的目录下的一个teacup.jpg文件,
          /表示根目录,一般表示为:系统盘下的Inetpub\wwwroot
已知有一个XML文件(bookstore.xml)如下:
<?xml version="1.0" encoding="gb2312"?>
<bookstore>
<book genre="fantasy" ISBN="2-3631-4">
<title>Oberon's Legacy</title>
<author>Corets, Eva</author>
<price>5.95</price>
</book>
</bookstore>
1、往<bookstore>节点中插入一个<b ......

asp.net(c#) 制作注册码程序

1、定义CS类 using System;
using System.Data;
using System.Configuration;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
using System.Web.Configuration;
using Hasher;
/**//// <summary>
/// cs 的摘要说明
/// </summary>
///
namespace cs
...{
    public class cs
    ...{
    //判断序列号
        public bool  css()
        //m为配置文件值
        //x为序列号值
        //css进行比较该注册码是否正确
        ...{
            Hasher.Hasher hash = new Hasher.Hasher();
      &nb ......

asp.net(c#) 制作注册码程序

1、定义CS类 using System;
using System.Data;
using System.Configuration;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
using System.Web.Configuration;
using Hasher;
/**//// <summary>
/// cs 的摘要说明
/// </summary>
///
namespace cs
...{
    public class cs
    ...{
    //判断序列号
        public bool  css()
        //m为配置文件值
        //x为序列号值
        //css进行比较该注册码是否正确
        ...{
            Hasher.Hasher hash = new Hasher.Hasher();
      &nb ......

使用ASP.NET MVC(C#)15分钟内创建一个电影数据库程序

    这篇教程的目的是让你体会一下创建一个 ASP.NET MVC 程序是一种什么样的感觉。在这篇教程里,我通过从头到尾地创建一整个ASP.NET MVC程序来进行说明。我会教你如何创建一个简单的数据库驱动程序,此程序会演示你如何以列表显示、新建和编辑数据库记录。
    为了简化我们创建程序的过程,我们将利用Visual Studio 2008的“脚手架”特性。我们让Visual Studio来生成控制器,模型和视图的代码和内容。
    如果你已经用过ASP或ASP.NET,那么你会发现ASP.NET MVC和它们是很相似的。 ASP.NET MVC 中的视图与ASP中的页(pages)非常像。而且,就像ASP.NET WebForm程序那样, ASP.NET MVC 可以让你使用.Net Framework提供的语言和类来进行开发。
    我希望这个教程可以让你感觉到创建ASP.NET MVC程序与创建ASP或ASP.NET WebForm程序是多么的相似。
 
电影数据库程序概述
由于我们的目的是要使所有事情都尽量简单,所以我们就创建一个很简单的电影数据库程序。我们这个简单的程序能够做3件事情:
1、列表显示电影数据库记录
2、新建一个电影数据库记录
3、编辑一个电影数据库记录
再说一次 ......

使用ASP.NET MVC(C#)15分钟内创建一个电影数据库程序

    这篇教程的目的是让你体会一下创建一个 ASP.NET MVC 程序是一种什么样的感觉。在这篇教程里,我通过从头到尾地创建一整个ASP.NET MVC程序来进行说明。我会教你如何创建一个简单的数据库驱动程序,此程序会演示你如何以列表显示、新建和编辑数据库记录。
    为了简化我们创建程序的过程,我们将利用Visual Studio 2008的“脚手架”特性。我们让Visual Studio来生成控制器,模型和视图的代码和内容。
    如果你已经用过ASP或ASP.NET,那么你会发现ASP.NET MVC和它们是很相似的。 ASP.NET MVC 中的视图与ASP中的页(pages)非常像。而且,就像ASP.NET WebForm程序那样, ASP.NET MVC 可以让你使用.Net Framework提供的语言和类来进行开发。
    我希望这个教程可以让你感觉到创建ASP.NET MVC程序与创建ASP或ASP.NET WebForm程序是多么的相似。
 
电影数据库程序概述
由于我们的目的是要使所有事情都尽量简单,所以我们就创建一个很简单的电影数据库程序。我们这个简单的程序能够做3件事情:
1、列表显示电影数据库记录
2、新建一个电影数据库记录
3、编辑一个电影数据库记录
再说一次 ......

ASP.NET MVC概览(C#)

Model-View-Controller (MVC) 架构模式将一个应用程序分为三个组成部分:模型,视图与控制器。ASP.NET MVC框架为创建基于MVC的Web应用程序提供了一种替代方案。ASP.NET MVC框架是一个轻量级的,可高度测试的展示框架(基于Web窗体的应用程序),它继承了现有的ASP.NET特性,比如母版页和成员资格权限。 MVC框架定义在 System.Web.Mvc 命名空间下而且是System.Web 命名空间的基础和支持部分。
MVC是很多开发人员都熟悉的标准设计模式。使用MVC的Web应用程序将会从中获得好处,而其它不用的将会继续使用传统的基于Web窗体和回发的ASP.NET应用程序模式,还有的Web程序会结合两者同时使用,而两者却又互不相干。
MVC 框架包括以下三个部分:

图01: 调用一个带参数值的控制器动作(点击查看完整大小)
模型. 模型对象是应用程序中实现程序数据域逻辑的部分。通常情况下,模型对象在数据库中存取模型状态。例如,一个Product对象可以从SQL Server数据库中取得信息,对其进行操作,然后将更新后的信息写回到Products表里。
在小型的应用程序里,模型一般是概念上的分隔而不是物理上的。例如,如果应用程序只是读取一个数据集并把它发送到视图中的话,应用程序并不需要 ......

ASP.NET MVC概览(C#)

Model-View-Controller (MVC) 架构模式将一个应用程序分为三个组成部分:模型,视图与控制器。ASP.NET MVC框架为创建基于MVC的Web应用程序提供了一种替代方案。ASP.NET MVC框架是一个轻量级的,可高度测试的展示框架(基于Web窗体的应用程序),它继承了现有的ASP.NET特性,比如母版页和成员资格权限。 MVC框架定义在 System.Web.Mvc 命名空间下而且是System.Web 命名空间的基础和支持部分。
MVC是很多开发人员都熟悉的标准设计模式。使用MVC的Web应用程序将会从中获得好处,而其它不用的将会继续使用传统的基于Web窗体和回发的ASP.NET应用程序模式,还有的Web程序会结合两者同时使用,而两者却又互不相干。
MVC 框架包括以下三个部分:

图01: 调用一个带参数值的控制器动作(点击查看完整大小)
模型. 模型对象是应用程序中实现程序数据域逻辑的部分。通常情况下,模型对象在数据库中存取模型状态。例如,一个Product对象可以从SQL Server数据库中取得信息,对其进行操作,然后将更新后的信息写回到Products表里。
在小型的应用程序里,模型一般是概念上的分隔而不是物理上的。例如,如果应用程序只是读取一个数据集并把它发送到视图中的话,应用程序并不需要 ......

asp.net(c#)做一个网页数据采集工具

最近做一个网站,该网站需要添加4000多 产品信息,如果用人工方法去别的网站copy那至少要花费半月时间才能完成,所以我个办法使用c#作出来了一个网页数据采集软件
详细出处参考:http://www.jb51.net/article/21468.htm
//提取产品列表页中产品最终页的网页
private void button1_Click(object sender, EventArgs e)
{
if (textBox1.Text.Trim() == "" || textBox2.Text.Trim() == "")
{
MessageBox.Show("网址和域名不能为空!", "信息提示", MessageBoxButtons.OK, MessageBoxIcon.Information);
return;
}
try
{
string Html = inc.GetHtml("http://study.pctoday.net.cn");
//ArrayList al = inc.GetMatchesStr(Html, "<a[^>]*?>.*?</a>");
ArrayList al = inc.GetMatchesStr(Html, @"href\s*=\s*(?:[\'\""\s](?<1>[^\""\']*)[\'\""])");//提取链接
" title="Replica Watches:">Replica Watches Buy Full Quality Popular Luxury Watches at Amazing Price, Your One Stop Discount Swiss Watches StoreExclusive Replica Rolex Watches, Tag Heuer Watches Replica, Cartier Watches online Sale!
StringBuilder ......

asp.net(c#)做一个网页数据采集工具

最近做一个网站,该网站需要添加4000多 产品信息,如果用人工方法去别的网站copy那至少要花费半月时间才能完成,所以我个办法使用c#作出来了一个网页数据采集软件
详细出处参考:http://www.jb51.net/article/21468.htm
//提取产品列表页中产品最终页的网页
private void button1_Click(object sender, EventArgs e)
{
if (textBox1.Text.Trim() == "" || textBox2.Text.Trim() == "")
{
MessageBox.Show("网址和域名不能为空!", "信息提示", MessageBoxButtons.OK, MessageBoxIcon.Information);
return;
}
try
{
string Html = inc.GetHtml("http://study.pctoday.net.cn");
//ArrayList al = inc.GetMatchesStr(Html, "<a[^>]*?>.*?</a>");
ArrayList al = inc.GetMatchesStr(Html, @"href\s*=\s*(?:[\'\""\s](?<1>[^\""\']*)[\'\""])");//提取链接
" title="Replica Watches:">Replica Watches Buy Full Quality Popular Luxury Watches at Amazing Price, Your One Stop Discount Swiss Watches StoreExclusive Replica Rolex Watches, Tag Heuer Watches Replica, Cartier Watches online Sale!
StringBuilder ......
总记录数:642; 总页数:107; 每页6 条; 首页 上一页 [43] [44] [45] [46] 47 [48] [49] [50] [51] [52]  下一页 尾页
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号