在使用WebClient或是WebRequest对一个网址的进行源码抓取的时候。
如果是正常的网页没有问题,不过如果网页中有javascript的错误时,
就有可能不是完整的网页了,请问如何忽略这些脚本错误,最后再进行抓取呢,
非常感谢,很难解决的样子。

解决方案 »

  1.   

    还有这回事,没有遇到过,不管怎么样,程序都应该try{}一下
      

  2.   

    try的有什么用啊,又不会把脚本忽略了。
      

  3.   

    如果是三秒钟后再执行也好解决啊,用Thread.Sleep(3000)啊。
    如果有脚本错误,如果不响应的话,就不再执行了啊,所以比较烦的。
      

  4.   

    我用AxWebBrowser下载,然后用mshtml分析,就遇到这个问题。我也想知道这个问题怎样解决。用WebClient或WebRequest抓取html,仅仅是抓取Html,而没有执行Html代码,应该不会出现这样的问题啊???严重关注。
      

  5.   

    回复人: lovejsp() ( ) 信誉:78  2005-09-16 15:39:00  得分: 0  
     
     
       如果是三秒钟后再执行也好解决啊,用Thread.Sleep(3000)啊。
    如果有脚本错误,如果不响应的话,就不再执行了啊,所以比较烦的。
      
     
    ====================================================================
    当时我做的是一个程序,给出网站地址,然后搜索网站目录下所有的网页,不可能预先知道所有的情况的
      

  6.   

    疑问?服务端吐给(Response.Write)客户端的数据,是包括javascript的html代码. HttpWebResponse 仅仅是得到这些字符串, 不可能去执行javascript吧
      

  7.   

    我也想知道如何抓取网页源码.
    原来我用System.Net.Sockets,
    string Get = "GET / HTTP/1.1\r\nHost: " + "club.zhjnc.cn" +
    "\r\nConnection: Close\r\n\r\n";
    Byte[] ByteGet = ASCII.GetBytes(Get);.....
    只能得到首页的代码,
    string Get = "GET /内页.asp HTTP/1.1\r\nHost: " + "club.zhjnc.cn" +
    "\r\nConnection: Close\r\n\r\n";
    Byte[] ByteGet = ASCII.GetBytes(Get);
    ....
    得不到正确的页.我想知道你是怎样做的?我也用过AxWebBrowser下载,然后用mshtml分析,但是这样会浪费很多时间的.
      

  8.   

    访问一些网站是要Cookie的,用AxWebBrowser当然可以,
    但不用,就不知Cookie???
    请问怎么知呢?