C#如何抓取网页中自己需要的文字内容

2025-02-27 06:22:13
推荐回答(3个)
回答1:

以前写了一个公司论坛的阅读器,比你这个复杂的多了,呵呵
建议你搜一下HttpWebRequest,和HttpWebResponse这方面的资料
先能获取到网页的html代码才能分析
接着使用Winista.HtmlParser.dll来解析dom得到你想要的信息
如果你要解析的网页不需要登陆,可以考虑用webbrowser控件来加载网页,然后直接访问dom对象就得到你要的数据了

回答2:

System.Net.WebClient 这个类的方法来下载网页html
用正则表达式来匹配html ,得到你想要的内容

回答3:

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;

namespace WindowsFormsApplication3
{
public partial class Form1 : Form
{
public WebBrowser wb; //WebBrowser控件

public Form1()
{
InitializeComponent();
}

private void 查询_Click(object sender, EventArgs e)
{
//txtTest.Text = webBrowser1.Document.Body.All["

"].InnerText;
wb.Navigate("http://www.ip138.com/ip2city.asp"); //加载这个网页

}

private void Form1_Load(object sender, EventArgs e)
{
wb = new WebBrowser();
wb.DocumentCompleted+=new WebBrowserDocumentCompletedEventHandler(LoadCompleted); //委托事件
}

private void LoadCompleted(object sender, WebBrowserDocumentCompletedEventArgs e)
{
txtTest.Text = wb.Document.GetElementsByTagName("center")[0].InnerHtml; //通过全局遍历
元素,得到第一个元素的的内容
}

}
}