WebBrowser采集不到内容

问题描述

我写了一个采集网页的程序,但第一次采集的时候能采集全了网页但就是采集不到我需要的内容,只要再点一次采集就能采到了DimhttpUrlAsNewSystem.Uri(weburl)Dimi'DimhttpUrlAsNewSystem.Uri("http://www.clickbank.com/marketplace.htm?"&"method=Sort&c=1&subc=2&keywords=&sortBy=popularity&billingType=ALL&locale=EN&i=50")DimreqAsNet.HttpWebRequestreq=CType(Net.WebRequest.Create(httpUrl),Net.HttpWebRequest)DimresAsNet.HttpWebResponse=CType(req.GetResponse(),Net.HttpWebResponse)'以下获取服务器返回信息DimreaderAsIO.StreamReader=_NewIO.StreamReader(res.GetResponseStream,System.Text.Encoding.GetEncoding("GB2312"))DimrespHTMLAsString=reader.ReadToEnd()res.Close()'关闭DimdocAsHtmlDocumentWebBrowser1.DocumentText=respHTMLdoc=WebBrowser1.DocumentDimhttpx=NewArrayList'连接数组'System.Threading.Thread.Sleep(5000)'Callsleep(5000)'MsgBox(doc.Links.Count)'MsgBox(doc.All.Count)Fori=0Todoc.Links.Count-1IfInStr(doc.Links(i).getattribute("href"),"http://zzzzz")>0AndInStr(doc.Links(i).OuterText,"viewpitchpage")<1Thenhttpx.Add(doc.Links(i).OuterText)httpx.Add(doc.Links(i).getattribute("href"))Dimhtml=respHTMLDimhtml1,html2'html1是放总网页,html2是放采集的网页Ifhtml.IndexOf(doc.Links(i).outertext)>0Thenhtml1=html.Substring(html.IndexOf(doc.Links(i).outertext))Ifhtml1.indexof("<br>")-html1.indexof("</b>")-4>0Thenhtml2=html1.substring(html1.indexof("</b>")+4,html1.indexof("<br>")-html1.indexof("</b>")-4)httpx.Add(html2)EndIfEndIfEndIfNext'MsgBox(doc.Links.Count)saveFile(path,httpx)‘保存网页第一次运行的时候doc.Links.Count为空doc.All.Count里有内容如果去掉红色那两行的注视就能采到内容,如果只去掉其中一行就采不到大家帮我看看是哪里的问题啊

解决方案

解决方案二:
路过帮顶=============11月6日,论坛升级公告,积分已经做了调整!http://topic.csdn.net/u/20081107/11/b27dc75f-14b1-4594-9de3-5b18d9e36a11.html此次调整增加了两个新的可用分获取渠道:1:帖子被推荐(加精)后,帖主可以获得88分的可用分奖励;2:帖子结帖后会返还帖主50%的悬赏分,无满意结帖不返还分数;3:接下来会不断增加新的可用分获取途径,比如参与活动赠送等,请大家多关注;

时间: 2024-10-22 00:03:28

WebBrowser采集不到内容的相关文章

网页采集-求c#用webbrowser采集网页上的动态内容

问题描述 求c#用webbrowser采集网页上的动态内容 求c#用webbrowser采集网页上的动态内容采集到EXCEL上,小弟新手,麻烦大大可以给点思路,或者代码哈,不胜感激 解决方案 http://blog.csdn.net/jintougao/article/details/12948633http://blog.163.com/wei_jia192@126/blog/static/9837925020103161001450/

c#-继续求教,C# webbrowser获取div的内容,详细补充一下

问题描述 继续求教,C# webbrowser获取div的内容,详细补充一下 C# webbrowser想获取div的内容,但是div里的内容是空白的,网页上又是有内容的,如何做啊.就是就是这个里面的源码 解决方案 从Webbrowser中获取文本内容 解决方案二: div内容是ajax动态加载什么的吧..确认你获取div的时机是否是js设置完毕后的,没有内容自己用Timer延后获取直到获取到内容 解决方案三: http://zhidao.baidu.com/question/498394525

一个带采集远程文章内容,保存图片,生成文件等完整的采集功能

本文提供了一套完整的ASP采集功能函数,包含提取地址的原字符,保存远程的文件到本地模拟登录,获取网页源码等功能函数,阿里西西站长推荐收藏! '================================================== '函数名:GetHttpPage '作  用:获取网页源码 '参  数:HttpUrl ------网页地址 '================================================== Function GetHttpPage(

php file_get_contents()读取采集远程文件内容

file_get_contents() 函数是用于将文件的内容读入到一个字符串中的首选方法 上面是帮助手册的是一次性把内容全部读入内存了,后面的实例我们也会讲到 _get_contents可以将远程文件读入为一个字符串, 而文件行的分隔就是"rn" explode将字符串按"rn"分隔  代码如下 复制代码 $shadu_url = "http://localhost/demo.html"; $shadu_str = file_get_conte

怎么采集dedecms自定义内容模型

有时我们需要用到dedecms提供的自定义内容模型功能去添加自定义内容模型来满足需求,那么dedecms自定义内同模型怎么添加采集规则呢?打开"/dede/templets/co_add_step0.htm",找到如下代码(19行左右): <?php $dsql->SetQuery("Select id,typename From `dede_channeltype` where id in(1,2,17) order by id asc "); $ds

php几种采集远程服务器内容代码

//方法一模仿用户访问网页  代码如下 复制代码 function readpr($link,$url) {  $fp = fsockopen ($url, 80, $errno, $errstr, 30);  if (!$fp)  {   echo "$errstr ($errno) ";   exit(1);  }  else  {   $out = "get $link http/1.0 ";   $out .= "host: $url "

php curl采集远程页面内容演示代码

例  代码如下 复制代码 $curlPost = 'a=1&b=2';//模拟POST数据 $ch = curl_init(); curl_setopt($ch, CURLOPT_HTTPHEADER, array('X-FORWARDED-FOR:0.0.0.0', 'CLIENT-IP:0.0.0.0'));  //构造IP curl_setopt($ch, CURLOPT_REFERER, "http://www.111cn.net/");   //构造来路 curl_s

php 利用curl模仿用户采集远程网站内容

 代码如下 复制代码 $timestamp = time(); function open($file,$type=''){         global $fromurl,$referer;         $cachename=$file;                 if($type){                         $file='/'.$type.'/'.$file;                 }else{                         $f

利用fopen函数采集新闻页面内容保存到本地函数

<? / / PHP的新闻抓取由Neil Moomey,. / /你可以自由的使用此代码作为您的愿望. / /请确保您可以从任何网站,你抓从标题许可. / /你可能需要写上您的服务器上的标题,文件以加快速度. / /抓斗从文件或网页的源代码网站 if(!($myFile=fopen(http://www.111cn.net,"r"))) { echo "The news interface is down for maintenance."; exit; }