winfrom 从网页中通过源代码截取文章

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using System.IO;//引用流
using System.Net;
using System.Text.RegularExpressions;//引用网页

namespace WindowsFormsApplication8
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }
        private string thtxt(string q)
        {
            Regex reg = new Regex("<(.|\n)+?>");
            //Regex r = new Regex(@"\s+");//把空格替换掉的正则表达式
            string th = reg.Replace(q, "");
            th = th.Replace("<", "<");
            th = th.Replace(">", "");
            //th = r.Replace(th,"");
            return th;
        }

        private void button1_Click(object sender, EventArgs e)//抓取网页,在richtextbox1中显示出网页的源代码
        {
            WebRequest wr = WebRequest.Create(textBox1.Text.Trim());//接收按钮2里输入的网址的文本内容
            WebResponse wtr = wr.GetResponse();//得到一个网址的回应
            Stream a = wtr.GetResponseStream();//用流来读取
            StreamReader s = new StreamReader(a,Encoding.UTF8);
             string q= s.ReadToEnd();//定义一个string类型的来接受它

             string th = thtxt(q);//调用上面去乱码的函数,把里面的符号全部去掉。
             a.Close();//使用完把流给关掉
             richTextBox1.Text = th;
             StreamWriter c = new StreamWriter("E:\\1.txt");//桌面上新建一个测试的内容,吧截下来的文本保存在这个文本档里。
             //把截取好的文本内容从流里输出出来
             c.WriteLine(th);//输出
             c.Close();//把流给关掉
             wtr.Close();

             if (q.IndexOf("红|袖|言|情|小|说") > 0)
            {
                int sub = q.IndexOf("红|袖|言|情|小|说");//添加一个网址的索引
             int xub = q.IndexOf("最后放弃");//从这里截取

                  //+4 (“好了,收工”)这4个字的索引不被截取,+4就是这五个字都显示在文本,否则会被删掉
              string w = q.Substring(sub, xub - sub + 4);
              richTextBox1.Text = w;//让显示框里吧截取好的文本内容给显示出来。
                 //引用一个流把它截取下来的内容存到一个文件里
             }
             else
             {
                 MessageBox.Show("您没有获得数据");
             }

        }

    }
}
时间: 2024-10-06 00:12:14

winfrom 从网页中通过源代码截取文章的相关文章

在网页中插入百度地图 (文章相关本内容出自百度地图 | API)

方法/步骤 1 打开“百度地图生成器”的网址:http://api.map.baidu.com/lbsapi/creatmap/index.html 如下图: 2 在“1.定位中心点”中,切换城市,并查找具体位置,如下图: 3 在“2.设置地图”中,可以按照自己的喜好修改地图的外观: 1.地图的宽和高 2.地图上显示的按钮(缩放.缩略图.比例尺) 3.鼠标和键盘对地图的操作 如下图: 4 在“3.添加标注”中,可以添加自己想要标注的位置和信息,如下图: 5 在“第二步 获取代码”中,点击“获取代

博客代码:iframe—网页中嵌入其他网页

iframe 是一个可以把另外一个网页嵌入到一个网页里的代码,非常有用.对于一个内容不错的网页,要方便地把它搬到自己的博客里,用这个代码最合适.而对于在新浪博客里不支持的一些网页效果和代码,可先把他们设置好,在支持他们的网站上使用,或上传到一个免费的网络空间或网络硬盘里,获取相应的网页地址,然后用 iframe嵌入到新浪博客里,非常好用! 一.固定位置的iframe代码: <DIV align=center><IFRAME src="http://weather.265.com

C# 网络编程之webBrowser获取网页url和下载网页中图片

该文章主要是通过C#网络编程的webBrowser获取网页中的url并简单的尝试下载网页中的图片,主要是为以后网络开发的基础学习.其中主要的通过应用程序结合网页知识.正则表达式实现浏览.获取url.下载图片三个功能.而且很清晰的解析了每一步都是以前一步为基础实现的. 一.界面设计 界面设计如下图所示,添加控件如图,设置webBrowser1其Anchor属性为Top.Bottom.Left.Right,实现对话框缩放;设置groupBox1其Dock(定义要绑到容器控件的边框)为Buttom,实

Asp.net网页中禁止使用剪切、复制、粘贴的方法

工欲善其事,必先利其器 在asp.net开发的网页中,有时候需要禁止用户粘贴复制密码,禁止用户copy文章直接粘贴到文本框中.采取的方法是直接在限制控件的地方写上禁止粘贴文本的代码.但是这样不是很方便,假如一个页面中有5个textbox的控件,这时候必须单独对每一个控件都写上禁止复制.粘贴的代码,导致工作量很大.那下面来看看具体操作. 第一步,新建一个空的webform页面. 第二步,在webform中添加几个textbox控件. 第三步,在body标签中加入 oncut="return fal

用CSS3做网页中的小三角,以及transition的用法

自开了博客园已经有2周了吧,虽然转载了一些觉得比较有用的文章之外还没有开始写自己的一些学习记录,那就从今天开始. 目前看了妙味的不少视频,有css+html,js的基础和中级也都看完了,作业也都做了,css3的部分也看过了,但是觉得讲得不太好,全部都是点到为止.无意中找到了传智播客的视频讲了一些css3的小技巧,今天就写一下用CSS3做网页中的小三角. 大致网上关于小三角的做法无非三种: 直接用背景图片,这个没什么好说的: 用块元素设置宽高都为0,三角的高用一条边框宽度,其他三条边框用dashe

在UIWebView中间接调用网页中的javascript代码获得想要的值

日记和一些废话: 今天在使用webView加载网页后, 发现网页中的点击事件是用js代码实现的, 可是怎么点击都没有反应, 而且我主要是想获取到点击事件转到的url , 后来发现html中又这么一段代码: document.addEventListener('WebViewJavascriptBridgeReady', function onBridgeReady(event) function openPage(pageUrl) { if(bridge) { bridge.send(pageU

在WebBrowser中通过模拟键盘鼠标操控网页中的文件上传控件

在WebBrowser中通过模拟键盘鼠标操控网页中的文件上传控件 引言 这两天沉迷了Google SketchUp,刚刚玩够,一时兴起,研究了一下WebBrowser. 我在<WebBrowser控件使用技巧分享>一文中曾谈到过"我现在可以通过WebBrowser实现对各种Html元素的操控,唯独无法控制Html的上传控件",出于安全原因,IE没有对上传控件提供操控支持,这使得我们没法像控制其他控件一样用简单的代码进行赋值. 比较实际的解决方案就是模拟操作了,下面我就将演示

网页中最常用的JS代码(js禁止右键、禁止复制,设为首页,加入收藏代码)

<body oncontextmenu=”return false”></body> <!– 禁用右键: –> <script> function stop(){ return false; } document.oncontextmenu=stop; </script> <body onselectstart=”return false”> 取消选取.防止复制 oncopy=”return false;” oncut=”return

如何在网页中提取Email地址

开博好久了,今天第一次发表技术文档,之前总是将一些好的事例保存在电脑,时间久了找起来也很麻烦,所以还是放在博客里进行归类比较方便,这样也能将自己在学习过程中的一些心得体会分享给大家,也能给需要的人一点帮助. 一个朋友需要我帮忙给写一个能够提取网页中Email地址的小程序,所以就用Java语言帮他做了一个,有不完善的地方还请大家谅解,并提出来,一起学习. 源代码详见附件!加压后将将readme.htm放在F:\\share\\readme.htm,也可自定义目录,自定义目录需要修改对应的代码文件路