从网页抓取数据( 手动输入效率太慢写的是什么?有什么区别?)
优采云 发布时间: 2021-09-28 14:14从网页抓取数据(
手动输入效率太慢写的是什么?有什么区别?)
//要抓取数据的页面路径
string url = "http://www.scedu.net/banshi/used-car/lower-secondary-education/middle-school-list/1381286867.shtml";
//将页面上的数据转换为HTML
string html = Method.GetHtmlData(url);
// txt_content.Text = html;
//找到需要的数据匹配正则 (?.+?)
string regex = @"(?.+?)";
Regex listRegex = new Regex(regex, RegexOptions.Multiline | RegexOptions.IgnoreCase);
//得到匹配的数据集合
MatchCollection mc = listRegex.Matches(html);
JCheng.Model.School Model = new JCheng.Model.School();
//将得到的字符串分割存进数组
string[] str = txt_content.Text.Substring(0, txt_content.Text.Length - 1).Replace("<br />", "").Split(',');
//数据每六个为一个model类 ,如下循环添加入库。
for (int i = 0; i < str.Length - 1; )
{
Model.sName = str[i];
Model.sAddress = str[i + 1];
Model.sPostCode = str[i + 2];
Model.sPhone = str[i + 3];
Model.sEmail = str[i + 4];
Model.sClass = str[i + 5];
new JCheng.BLL.School().Add(Model);
i += 6;
}
经常遇到需要阅读省、市、县等信息的情况。数据庞大,人工输入效率太慢。上面的代码是一个区县所有中学信息的列表。用在数据库里,很爽快。哈哈,第一次做数据采集。代码肯定写得不好。让我们记录下来。我希望它会对大家有所帮助。