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;
namespace Capture
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
Timer timer1 = new Timer();
private void Form1_Load(object sender, EventArgs e)
{
}
private void btnStop_Click(object sender, EventArgs e)
{
timer1.Stop();
//Application.Exit();
}
private void btnStart_Click(object sender, EventArgs e)
{
timer1.Interval = int.Parse(txtInter.Text.Trim()) * 1000;
timer1.Tick += new EventHandler(timer1_Tick);
timer1.Start();
}
private void timer1_Tick(object sender, EventArgs e)
{
string DirName = "";
string DirPath = txtDir.Text.ToString();
string CapUrl = txtUrl.Text.Trim();
HttpWebRequest webRequest = (HttpWebRequest)WebRequest.Create(new Uri(CapUrl));
HttpWebResponse webResponse = (HttpWebResponse)webRequest.GetResponse();
StreamReader str = new StreamReader(webResponse.GetResponseStream(), Encoding.GetEncoding("gb2312"));
string fileName = txtDir.Text.ToString().Substring(txtDir.Text.ToString().LastIndexOf("//") + 1);
//判断选择的文件夹后面是否有文件名,如果没有则把所抓取网页的文件名加在所选的文件夹后面
if (fileName == "" || !fileName.Contains(".html") || !fileName.Contains(".htm"))
{
string URLName = CapUrl.Substring(CapUrl.LastIndexOf("/") + 1);
DirPath +="//"+URLName;
}
DirName = txtDir.Text.ToString().Substring(0, txtDir.Text.ToString().Length - fileName.Length);
if (!Directory.Exists(DirName))
{
Directory.CreateDirectory(DirName);
}
using (FileStream fs = new FileStream(DirPath, FileMode.Create))
{
// 创建一个StreamWriter对象,使用UTF-8编码格式
using (StreamWriter writer = new StreamWriter(fs, Encoding.GetEncoding("gb2312")))
{
writer.Write(str.ReadToEnd());
writer.Close();
}
}
str.Close();
webResponse.Close();
}
//用folderBrowserDialog控件选择文件夹,必须先加一个按钮控件做为浏览按钮,一个
// 文本框控件用于保存选择的文件夹路径
private void btnBrowse_Click(object sender, EventArgs e)
{
if (folderBrowserDialog1.ShowDialog() == DialogResult.OK)
{
txtDir.Text = folderBrowserDialog1.SelectedPath;
}
}
}
}
定时抓取网页,并保存到指定文件
最新推荐文章于 2021-12-12 13:47:39 发布