C#抓取网面上的html内容(JS动态生成的无法抓取)
2016-11-30 15:33
615 查看
抓取内容的代码:
调用方式:
1 /// </summary> 2 /// <param name="url">路径URL</param> 3 /// <param name="path">存储路径</param> 4 /// <returns></returns> 5 public static string HttpDownloadFile(string url, string path) 6 { 7 try 8 { 9 // 设置参数 10 HttpWebRequest request = WebRequest.Create(url) as HttpWebRequest; 11 12 //发送请求并获取相应回应数据 13 HttpWebResponse response = request.GetResponse() as HttpWebResponse; 14 //直到request.GetResponse()程序才开始向目标网页发送Post请求 15 Stream responseStream = response.GetResponseStream(); 16 17 //可以将生成的流文件直接生成字符串 SourceCode就是生成后的字符串 18 //StreamReader readStream = new StreamReader(responseStream, Encoding.UTF8); 19 //string SourceCode = readStream.ReadToEnd(); 20 21 //创建本地文件写入流 22 if (File.Exists(path)) 23 { 24 File.Delete(path); 25 } 26 FileStream fs = File.Create(path); 27 fs.Close(); 28 29 Stream stream = new FileStream(path, FileMode.Create); 30 byte[] bArr = new byte[1024]; 31 int size = responseStream.Read(bArr, 0, (int)bArr.Length); 32 while (size > 0) 33 { 34 stream.Write(bArr, 0, size); 35 size = responseStream.Read(bArr, 0, (int)bArr.Length); 36 } 37 stream.Close(); 38 responseStream.Close(); 39 return path; 40 } 41 catch (Exception ex) 42 { 43 44 throw ex; 45 } 46 47 }
调用方式:
1 HttpReviceFile.HttpDownloadFile("http://localhost:811/ ", @"D:\Work\Test.xml");
相关文章推荐
- c# 抓取 js动态生成的HTML的工具:NHtmlUnit
- 如何抓取Js动态生成html的页面?
- c# 抓取 js动态生成的HTML的工具:NHtmlUnit
- python抓取javascript动态生成HTML内容的实践
- 在Python中使用CasperJS获取JS渲染生成的HTML内容的教程
- 万能js实现翻页,动态生成内容自动翻页,兼容各种浏览器(已测试)----神器版!
- 使用phantomjs抓取JS动态生成的页面
- JS创建HTML控件并动态生成页面的写法
- [HTML/JS]利用JQuery的load函数动态加载其它页面的内容的实现代码代替Ifram
- 万能js实现翻页,动态生成内容自动翻页,兼容各种浏览器(已测试)----神器版!
- 如何抓取Js动态生成数据且以滚动页面方式分页的网页
- 如何抓取Js动态生成数据且以滚动页面方式分页的网页
- 根据数据库内容动态生成html页面
- json转js数组-分页-动态生成html-样式引入
- 意外解决js动态生成的html代码中一些事件失效问题
- 动态生成Html页面内容
- JS动态生成内容
- JS动态生成html表格
- 当ajax加载更多的时候,动态生成的html里面的事件无法触发
- 抓取Js动态生成数据且以滚动页面方式分页的网页