快速业务通道

ASP.NET实现数据采集

作者 佚名技术 来源 NET编程 浏览 发布时间 2012-05-20

这是我自己写的一个数据采集程序,是采集一个人才网里面人才的信息,第一次写Blog, 写的不好不要见笑。

//先按照下面的字段创建一个数据表

以下为引用的内容:

public partial class Form2 : Form
{
public Form2()
{
InitializeComponent();
}
//姓名
public static string XM = "";
//年龄
public static string nl = "";
//性别
public static string XB = "";
//身高
public static string SG = "";
//政治面貌
public static string mm = "";
//民族
public static string MZ = "";
//学历
public static string XL = "";
//婚姻状况
public static string HK = "";
//所学专业
public static string ZY = "";
//工作经验
public static string GZJY = "";
//在职单位
public static string ZZDW = "";
//在职职位
public static string ZZZW = "";
//工作经历
public static string GZJL = "";
//要求月薪
public static string YX = "";
//工作性质
public static string GZXZ = "";
//求职意向
public static string QZYX = "";
//具体职务
public static string JTZW = "";
//期望工作地
public static string QWGZD = "";
//教育情况,语言水平,技术专长
public static string QT = "";
private void button1_Click(object sender, EventArgs e)
{
label1.Text = "正在采集数据……";

//遍历数据的页数
for (int i = 1; i <=50; i++)
{
CJ("http://www.xcjob.cn/renli.asp?pageno=" + i);
}

label1.Text = "恭喜你采集完成!";
MessageBox.Show("恭喜你采集完成!");
}

//采集数据
private void CJ(string Url)
{
//获得页面源文件(Html)
string strWebContent = YM(Url);

//按照Html里面的标签 取出和数据有关的那段源码
int iBodyStart = strWebContent.IndexOf("<body", 0);
int aaa = strWebContent.IndexOf("关键字:", iBodyStart);
int iTableStart = strWebContent.IndexOf("<table", aaa);
int iTableEnd = strWebContent.IndexOf("</table>", iTableStart);
string strWeb = strWebContent.Substring(iTableStart, iTableEnd - iTableStart);

//生成HtmlDocument
HtmlElementCollection htmlTR = HtmlTR_Content(strWeb, "tr");

foreach (HtmlElement tr in htmlTR)
{
try
{
//姓名
XM = tr.GetElementsByTagName("a")[0].InnerText;
//获得详细信息页面的网址
string a = tr.GetElementsByTagName("a")[0].GetAttribute("href").ToString();
a = "http://www.xcjob.cn" + a.Substring(11);

Content(a);
}
catch { }
}
}

//采集详细数据
private void Content(string URL)
{
try
{
string strWebContent = YM(URL);

//按照Html里面的标签 取出和数据有关的那段源码
int iBodyStart = strWebContent.IndexOf("<body", 0);
int iTableStart = strWebContent.IndexOf("浏览次数", iBodyStart);
int iTableEnd = strWebContent.IndexOf("<table", iTableStart);
int dd = strWebContent.IndexOf("</table>", iTableEnd);
string strWeb = strWebContent.Substring(iTableEnd, dd - iTableEnd + 8);

HtmlElementCollection htmlTR = HtmlTR_Content(strWeb, "

凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!

分享到: 更多

Copyright ©1999-2011 厦门凌众科技有限公司 厦门优通互联科技开发有限公司 All rights reserved

地址(ADD):厦门软件园二期望海路63号701E(东南融通旁) 邮编(ZIP):361008

电话:0592-5908028 传真:0592-5908039 咨询信箱:web@lingzhong.cn 咨询OICQ:173723134

《中华人民共和国增值电信业务经营许可证》闽B2-20100024  ICP备案:闽ICP备05037997号