Раньше я часто слышал, как другие люди проводят процедуры сбора средств, поэтому сегодня я попробую в этом свои силы. .
использование системы;
использование System.Collections;
использование System.ComponentModel;
использование System.Data;
использование System.Drawing;
использование System.Web;
использование System.Web.SessionState;
использование System.Web.UI;
использование System.Net;
использование System.Text;
использование System.Text.RegularExpressions;
использование System.IO;
использование System.Data.SqlClient;
использование System.Web.UI.WebControls;
использование
пространства имен System.Web.UI.HtmlControls Temp
;
{
/// <сводка>
/// Краткое описание GetHtmlSourceFromUrl.
/// </сводка>
общедоступный класс GetHtmlSourceFromUrl: System.Web.UI.Page
{
частный SqlConnection con;
частная пустота Page_Load (отправитель объекта, System.EventArgs e)
{
//Поместите сюда пользовательский код для инициализации страницы
если(!Испостбак)
{
ВставитьВБД();
}
}
частная пустота InsertToDB()
{
for(int i=1;i<1000;i++)
{
строка Html = string.Empty;
string SqlText="вставить в значения BeiJingBus(BusLineNumber,Html)(@BLN,@Html)";
string ConnectionString=@"Server=.xxxx;ID пользователя =xxxx;Pwd=xxxxx;DataBase=Map";
con = новый SqlConnection (ConnectionString);
SqlCommand cmd = новый SqlCommand (SqlText, con);
string Url=@"http://beijing.ibusdb.com/?busline="+i+"&s=busline&x=31&y=18 " // ^_^, это значит взять Пекин и перейти на домашнюю страницу, изменить параметры, можно взять другие города
string Content = string.Empty;
Запрос HttpWebRequest = (HttpWebRequest)WebRequest.Create(Url);
Ответ HttpWebResponse = (HttpWebResponse) request.GetResponse();
Поток StreamReader = новый StreamReader(response.GetResponseStream(),Encoding.GetEncoding("gb2312"));
Содержимое =stream.ReadToEnd();
поток.Закрыть();
ответ.Закрыть();
int start=3487; //Переходим к рекламе, чтобы получить текст
int end= Content.Length-4222;//Перейти к рекламному объявлению, чтобы получить текст
if(end-start>0) //Оцениваем существование i-й шины
{
Html=Regex.Replace(Content.Substring(start,end-start),@"<[^>]+>",""); //Отдельный html-код
пытаться
{
cmd.Parameters.Add("@BLN",SqlDbType.Int).Value =i;
cmd.Parameters.Add("@Html",SqlDbType.Text).Value= Html;
con.Открыть();
cmd.ExecuteNonQuery();
}
поймать (ошибка SqlException)
{
Ответ.Запись(ошибка.Сообщение);
con.Закрыть();
перерыв;
}
con.Закрыть();
}
}
}
--Таблица SQL-скрипта:
СОЗДАТЬ ТАБЛИЦУ [dbo].[BeiJingBus](
[id] [int] IDENTITY(1,1) NOT NULL,
[BusLineNumber] [int] NULL,
[Html] [nvarchar](макс.) COLLATE Chinese_PRC_CI_AS NULL
) ON [PRIMARY]
не использует подписи: http://hi.baidu.com/Chen Li/blog