2012-08-07 101 views
0

这是我如何缓存网页,但我没有得到整页,有约30结果在这个网页,我只得到26个结果。请任何人都可以帮助我?屏幕抓取Asp.net

WebClient wc = new WebClient(); 
html = wc.DownloadString("http://www.yellowpages.com/ga/metropcs-store?g=GA&page=1&q=Metropcs+Store").ToString(); 

是与如果任何人有这方面的任何解决方案最终请帮我

+2

字符串是否以“”结尾? – 2012-08-07 08:08:07

+1

你如何解析输出? – dash 2012-08-07 08:08:31

+1

顺便说一句,尝试[YP API](http://developer.yp.com/api/Listings%2520Endpoints/Search-60) – 2012-08-07 08:11:11

回答

0

您提供正常工作的代码。意味着返回的html完全包含30个项目。您所遵循的解析技术可能存在一些问题。当我检查我发现在申请第28 29和30项目的CSS类略有差异。这可能导致问题

+0

我不认为在CSS中有任何区别我用这个作为我的解析事情MatchCollection m1 = Regex.Matches(html1,@“(?<= ] *> )。*?(?=)“,RegexOptions.Singleline);请帮我在这 – 2012-08-07 12:17:35

+0

项目i到27 css类的其中一个div是“排名引脚”。对于28,29和30,它只是“排名”。即使视觉差异是存在的(请检查重新编号的页面),最后三个项目没有索引号的背景 – shajivk 2012-08-07 12:23:21

+0

我不使用该div的排名针我使用这个 4864吉米卡特大道, 所以没关系是css的任何其他改变我提取这样的数据MatchCollection m2 = Regex.Matches(html1,@“(?<= ] *>)。*?(?=)“,RegexOptions.Singleline); (每米平方m) Response.Write(m.ToString()+“
”); } – 2012-08-07 12:30:45