using System;
using System.Net;
using System.Text;
using System.Text.RegularExpressions;
namespace web
{
public partial class dang : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
WebClient wc = new WebClient();
byte[] bt = wc.DownloadData(@"网址");
string res = Encoding.Default.GetString(bt);
res = Regex.Replace(res, @"<!DOCTYPE .*?第1页", string.Empty, RegexOptions.IgnoreCase | RegexOptions.Singleline);
res = Regex.Replace(res, @"<!--页尾 开始 -->.*?</html>", string.Empty, RegexOptions.IgnoreCase | RegexOptions.Singleline);
res = Regex.Replace(res, @"<div id=""divBottomPageNavi"".*?</div>.*?</div>.*?</div>.*?</div>", string.Empty, RegexOptions.IgnoreCase | RegexOptions.Singleline);
res = Regex.Replace(res, @"</div><div class='list_r_title_text3a'>.*?list_r_line""></div>", string.Empty, RegexOptions.IgnoreCase | RegexOptions.Singleline);
res = Regex.Replace(res, @"<div class=""clear"">.*?", string.Empty, RegexOptions.IgnoreCase | RegexOptions.Singleline);
res = Regex.Replace(res, @"<div class=""list_r_list"">.*?<h2>", string.Empty, RegexOptions.IgnoreCase | RegexOptions.Singleline);
res = Regex.Replace(res, @"</h2>.*?</div>.*?</div>", string.Empty, RegexOptions.IgnoreCase | RegexOptions.Singleline);
res = Regex.Replace(res, @"<a name=""link_prd_name"" href='", "");
res = Regex.Replace(res, @"' target=""_blank"">", "ww");
res = Regex.Replace(res, @"ww.*?</a>", "");
res = Regex.Replace(res, "</div>", ";");
res = res.Substring(0, res.Length - 1).ToString();
string[] ress = res.Split(';');
for (int i = 0; i < ress.Length - 1; i++)
{
WebClient wc1 = new WebClient();
string ur = @"" + ress[i] + "";
byte[] bt1 = wc.DownloadData(ur);
string res1 = Encoding.Default.GetString(bt1);
res1 = Regex.Replace(res1, @"<!DOCTYPE .*?您最近的浏览历史", string.Empty, RegexOptions.IgnoreCase | RegexOptions.Singleline);
res1 = Regex.Replace(res1, @"<h2 class=""black14"">.*?<!--价格购买区结束-->", string.Empty, RegexOptions.IgnoreCase | RegexOptions.Singleline);
res1 = Regex.Replace(res1, @"<a name=""review_point""></a>.*?</html>", string.Empty, RegexOptions.IgnoreCase | RegexOptions.Singleline);
// Response.Write(res1);
Regex chubantime = new Regex(@"<li>出版时间:.*?</li>");
if (chubantime.IsMatch(res1))
{
string chubantime1 = chubantime.Match(res1).Value.ToString();
chubantime1 = Regex.Replace(chubantime1, "<li>出版时间:", "");
chubantime1 = Regex.Replace(chubantime1, "</li>", "");
Response.Write(chubantime1.Trim() + "<br>");
}
Regex zishu = new Regex(@"<li>字 数:.*?</li>");
if (zishu.IsMatch(res1))
{
string zishu1 = zishu.Match(res1).Value.ToString();
zishu1 = Regex.Replace(zishu1, "<li>字 数:", "");
zishu1 = Regex.Replace(zishu1, "</li>", "");
Response.Write(zishu1.Trim() + "<br>");
}
Regex banci = new Regex(@"<li>版 次:.*?</li>");
if (banci.IsMatch(res1))
{
string banci1 = banci.Match(res1).Value.ToString();
banci1 = Regex.Replace(banci1, "<li>版 次:", "");
banci1 = Regex.Replace(banci1, "</li>", "");
Response.Write(banci1.Trim() + "<br>");
}
Regex yeshu = new Regex(@"<li>页 数:.*?</li>");
if (yeshu.IsMatch(res1))
{
string yeshu1 = yeshu.Match(res1).Value.ToString();
yeshu1 = Regex.Replace(yeshu1, "<li>页 数:", "");
yeshu1 = Regex.Replace(yeshu1, "</li>", "");
Response.Write(yeshu1.Trim() + "<br>");
}
Regex yshsj = new Regex(@"<li>印刷时间:.*?</li>");
if (yshsj.IsMatch(res1))
{
string yshsj1 = yshsj.Match(res1).Value.ToString();
yshsj1 = Regex.Replace(yshsj1, "<li>印刷时间:", "");
yshsj1 = Regex.Replace(yshsj1, "</li>", "");
Response.Write(yshsj1.Trim() + "<br>");
}
Regex kaiben = new Regex(@"<li>开 本:.*?</li>");
if (kaiben.IsMatch(res1))
{
string kaiben1 = kaiben.Match(res1).Value.ToString();
kaiben1 = Regex.Replace(kaiben1, "<li>开 本:", "");
kaiben1 = Regex.Replace(kaiben1, "</li>", "");
Response.Write(kaiben1.Trim() + "<br>");
}
Regex yinci = new Regex(@"<li>印 次:.*?</li>");
if (yinci.IsMatch(res1))
{
string yinci1 = yinci.Match(res1).Value.ToString();
yinci1 = Regex.Replace(yinci1, "<li>印 次:", "");
yinci1 = Regex.Replace(yinci1, "</li>", "");
Response.Write(yinci1.Trim() + "<br>");
}
Regex zhizhang = new Regex(@"<li纸 张:.*?</li>");
if (zhizhang.IsMatch(res1))
{
string zhizhang1 = zhizhang.Match(res1).Value.ToString();
zhizhang1 = Regex.Replace(zhizhang1, "<li>纸 张:", "");
zhizhang1 = Regex.Replace(zhizhang1, "</li>", "");
Response.Write(zhizhang1.Trim() + "<br>");
}
Regex isbnn = new Regex(@"<li>I S B N :.*?</li>");
if (isbnn.IsMatch(res1))
{
string isbnn1 = isbnn.Match(res1).Value.ToString();
isbnn1 = Regex.Replace(isbnn1, "<li>I S B N :", "");
isbnn1 = Regex.Replace(isbnn1, "</li>", "");
Response.Write(isbnn1.Trim() + "<br>");
}
Regex baozhuang = new Regex(@"<li>包 装:.*?</li>");
if (baozhuang.IsMatch(res1))
{
string baozhuang1 = baozhuang.Match(res1).Value.ToString();
baozhuang1 = Regex.Replace(baozhuang1, "<li>包 装:", "");
baozhuang1 = Regex.Replace(baozhuang1, "</li>", "");
Response.Write(baozhuang1.Trim() + "<br>");
}
Regex chubanshe = new Regex(@"<div id='publisher_'>出 版 社:.*?</div>");
if (chubanshe.IsMatch(res1))
{
string chubanshe1 = chubanshe.Match(res1).Value.ToString();
chubanshe1 = Regex.Replace(chubanshe1, "<div id='publisher_'>出 版 社:", "");
chubanshe1 = Regex.Replace(chubanshe1, "</div>", "");
Response.Write(chubanshe1.Trim() + "<br>");
}
Regex zuozhe = new Regex(@"<div id='author_' >作 者:.*?</div>");
if (zuozhe.IsMatch(res1))
{
string zuozhe1 = zuozhe.Match(res1).Value.ToString();
zuozhe1 = Regex.Replace(zuozhe1, "<div id='author_' >作 者:", "");
zuozhe1 = Regex.Replace(zuozhe1, "</div>", "");
Response.Write(zuozhe1.Trim() + "<br>");
}
Regex dingjia = new Regex(@"<span class=""gray87"">定价:<span class=""del"">.*?</span></span>");
if (dingjia.IsMatch(res1))
{
string dingjia1 = dingjia.Match(res1).Value.ToString();
dingjia1 = Regex.Replace(dingjia1, @"<span class=""gray87"">定价:<span class=""del"">", "");
dingjia1 = Regex.Replace(dingjia1, "</span></span>", "");
Response.Write(dingjia1.Trim() + "<br>");
}
Regex jiage = new Regex(@"<span class=""redc30"">价格:.*?</b></span>");
if (jiage.IsMatch(res1))
{
string jiage1 = jiage.Match(res1).Value.ToString();
jiage1 = Regex.Replace(jiage1, @"<span class=""redc30"">价格:<b>", "");
jiage1 = Regex.Replace(jiage1, "</b></span>", "");
Response.Write(jiage1.Trim() + "<br>");
}
Regex neirong = new Regex(@"内容简介</h2> <div class=""right_content"">.*?</div><div class=""dashed"">");
if (neirong.IsMatch(res1))
{
string neirong1 = neirong.Match(res1).Value.ToString();
neirong1 = Regex.Replace(neirong1, @"内容简介</h2> <div class=""right_content"">", "");
neirong1 = Regex.Replace(neirong1, @"</div><div class=""dashed"">", "");
Response.Write(neirong1.Trim() + "<br>");
}
Regex mulu = new Regex(@"目录</h2> <div class=""right_content"">.*?</div>");
if (mulu.IsMatch(res1))
{
string mulu1 = mulu.Match(res1).Value.ToString();
mulu1 = Regex.Replace(mulu1, @"目录</h2> <div class=""right_content"">", "");
mulu1 = Regex.Replace(mulu1, "</div>", "");
Response.Write(mulu1.Trim() + "<br>");
}
Regex phs = new Regex(@"<img src="".*?id=""img_show_prd""/>");
if (phs.IsMatch(res1))
{
string phs1 = phs.Match(res1).Value.ToString();
phs1 = Regex.Replace(phs1, @"<img src=""", "");
phs1 = Regex.Replace(phs1, @""" id=""img_show_prd""/>", ""); //小图
string phsname = Regex.Replace(phs1,@"http.*?\.com/\d.*/\d.*/",string.Empty,RegexOptions.IgnoreCase|RegexOptions.Singleline);
Response.Write("图片名"+phsname+"<br>");
string phbb = phs1.Substring(0, phs1.Length - 5) + "o.jpg"; //大图
//WebClient WCs = new WebClient();
//WebClient WCb = new WebClient();
//WCp.DownloadFile(@"http://www.XXX.com/img/XXX_logo.gif", Server.MapPath("XX.gif"));
//WCs.DownloadFile(@"""phs1""",Server.MapPath(""));
//WCs.DownloadFile(@"""phbb""");
Response.Write(phs1 + "<br>");
Response.Write(phbb + "<br>");
}
//Regex phb = new Regex(@"<a class=""gray878787a"" href=""javascript:ImgBtnChgPrd_Click\(this,'(.*?)'\)"" name=""bigpicture"">点击查看大图</a></div>");
//if (phb.IsMatch(res1))
//{
// string phb1 = phs.Match(res1).Value.ToString();
// phb1 = Regex.Replace(phb1, @"this,'", "");
// phb1 = Regex.Replace(phb1, @"'\)"" name=""bigpicture"">点击查看大图</a></div>", ""); //大图
// Response.Write(phb1);
//}
}
WebClient WCp = new WebClient();
WCp.DownloadFile(@"http://www.XXX.com/img/XXX_logo.gif", Server.MapPath("XXX.gif")); //这里是用WEBCLIENT保存图片
}
}
}
此处只列出了.CS文件
分享到:
相关推荐
总的来说,"C# 数据采集系统 智能采集 数据分析 整套源码"是一个综合性的项目,涵盖了从网络数据采集、智能策略、数据处理、数据库操作到系统架构等多个方面的知识。通过深入理解并实践这套源码,开发者可以提升在...
数据采集是IT领域中至关重要的一个环节,它涉及到从各种来源获取信息并将其转化为可分析的数据。在这个过程中,编程语言的选择对于实现高效、精准的数据采集至关重要。标题中的"采集数据程序_采集数据_C#数据采集_...
标题中的“Daq_Test.zip_C# ni8501卡_DAQ C#_NI采集程序_采集”揭示了本主题的核心内容,这是一个关于使用C#编程语言与NI(National Instruments)ni8501数据采集卡进行数据采集的程序。在IT领域,DAQ(Data ...
抄表源码是一个基于C#语言开发的程序,主要用于实现智能电表的数据自动采集功能。在现代电力系统中,智能电表已经广泛应用,能够实时、准确地记录电力消耗,为电网管理和用户提供了极大的便利。本项目的核心就是实现...
总的来说,"C# Modbus TCP/IP数据采集程序"是一个结合了C#网络编程、Modbus协议理解和CSV数据处理的综合性项目。通过这样的程序,可以方便地从Modbus TCP/IP设备获取实时数据,并将其整理存储,为数据分析和监控提供...
【标题】"C#上位机数据采集源代码"是一个基于C#编程语言开发的数据采集系统,主要用于收集、处理和展示来自多个串行接口的数据。这个系统设计为10路串口同时工作,能高效地从不同的硬件设备接收数据,如传感器、控制...
通过以上步骤,我们可以构建一个高效且可靠的数据采集程序,用于监控和分析DCS系统的运行状况,从而为工厂的生产决策提供有价值的信息。在实际应用中,还需要考虑数据的安全性、系统的可扩展性和与其他系统的集成...
在接收到数据后,会有一个事件处理函数进行数据的解析和业务逻辑处理。同时,为了保证用户界面的响应性,通常会使用异步操作来读取和写入数据。 通过这个实例源码,你可以学习到如何在C#中实现上述功能,了解实际...
在IT行业中,数据采集是一项重要的...对于学习Web爬虫、数据采集和C#编程的开发者来说,这是一个很好的实践案例。通过深入理解并应用这些技术,开发者可以扩展到其他类似的数据采集项目,如股票市场数据、天气预报等。
综上所述,"PLC数据采集程序"涵盖了C#编程、工业通讯协议、数据处理、界面设计等多个方面,是一个综合性的自动化工程应用。通过学习和实践这类项目,开发者可以深入理解工业自动化领域的软件开发。
在本文中,我们将深入探讨如何使用C#进行数据采集,特别是在实时接收和显示温湿度传感器数据方面的应用。C#是一种广泛用于开发桌面应用程序、Web应用程序和游戏的编程语言,其强大的功能和易用性使得它成为实现...
本主题聚焦于使用C#与三菱数控系统(Mitsubishi CNC)进行通信,实现数据采集。这是一项重要的功能,因为能够实时监控和控制机床状态,提升生产效率和质量。 首先,三菱CNC通讯.EXE文件是一个安装程序,用于安装与...
本文将深入探讨如何利用C#进行串口数据采集,并结合曲线实时显示的功能,构建一个医疗器械测试工具。这个工具能够动态显示并保存接收到的数据,具有很高的实用价值。 首先,让我们了解C#中的串口通信。在C# .NET...
从给定的代码片段来看,这是一个C#类库的一部分,主要功能是实现网络数据采集,包括生成随机命名的字符串、获取文件扩展名以及获取远程HTML代码。以下是对这些功能的详细解析: ### 1. 随机命名的字符串生成(`...
在"C# 串口程序采集串口数据"这个主题中,你可能需要创建一个程序,定期或根据特定条件发送命令到串口,并通过`DataReceived`事件接收响应数据。这可能用于监控设备状态、控制设备操作或其他需要串口通信的任务。`...
该程序的标题和描述都是 "C# 自动采集程序源代码",表明该程序是一个使用 C# 编程语言编写的自动采集程序。 标签 该程序的标签是 "C#" 和 "自动采集",表明该程序使用 C# 语言编写,并且具有自动采集的功能。 ...
【程序老媛出品,必属精品,亲测...资源名:LCR仪器的数据采集C#程序源码 资源类型:程序源代码 源码说明:使用串口、正则表达式和数据IO卡与PLC同步采集LCR测试仪的测试数据 适合人群:新手及有一定经验的开发人员
这是个人做的一个实用小项目,主要用于与下位机设备通信,将下位机采集的数据实时显示并记录,界面设计参考Windows任务管理器 这是个人做的一个实用小项目,主要用于与下位机设备通信,将下位机采集的数据实时显示...
总结起来,"C# Socket TCP数据采集工具"是一个结合了C#编程、Winform用户界面设计、Socket TCP网络通信以及多线程和数据库操作的综合应用示例,对于想要深入学习这些技术的开发者,这是一个宝贵的实战教程。...
- **线程创建**:C#通过`System.Threading.Thread`类来创建线程,通过实例化`Thread`类并传递一个委托方法作为入口点来启动线程。 2. **线程的生命周期** - **新建**:创建`Thread`对象。 - **启动**:调用`...