English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

Realizzazione di monitoraggio in tempo reale delle pagine web in 5 minuti con Asp.Net

Perché viene utilizzato il monitoraggio in tempo reale del sito web?

 LZ ha acquistato una casa a Wuxi di recente, anche se lavora a Shanghai, ma il prezzo delle case a Shanghai è davvero troppo alto per sopportare, quindi ho scelto Wuxi, che è ancora accettabile, come luogo di residenza. I compagni che hanno acquistato case sanno probabilmente il processo di acquisto di case, e uno degli step molto importanti è che è necessario registrare la casa in modo commerciale. In altre parole, quando acquisti una casa, puoi controllare la situazione di registrazione della casa sul sito web di registrazione delle case del governo. Se il costruttore sta vendendo questa casa dopo averla registrata, significa che questa casa è stata venduta più volte. E un altro punto molto importante è che solo dopo aver registrato è possibile procedere con il prestito bancario. Con il tasso di interesse bancario che aumenta sempre di più, è vantaggioso registrarsi e ottenere un prestito più presto possibile, quindi sapere rapidamente la situazione di registrazione della casa che hai acquistato è particolarmente importante.

Certamente, è anche possibile controllare ogni giorno la situazione di registrazione del sito web, è ovvio che questo non è il comportamento degli sviluppatori, né quello degli sviluppatori .Net. Il comportamento degli sviluppatori è che una volta che la registrazione è terminata, il programma deve notificare in modo onesto al telefono. A proposito, il sito web per la ricerca della registrazione è molto lento.

Due: scegliere servizio Windows, finestra (Winform), web o programma di console?

Certamente, la soluzione più adatta è il servizio Windows, anche Winform e web sono buone opzioni. Il programma di console non è necessariamente la soluzione più adatta, ma sicuramente è lo sviluppo più rapido. Dopo aver considerato, poiché è un progetto di monitoraggio molto piccolo e che utilizzeremo solo per un paio di mesi o un paio di giorni, non c'era bisogno di complicare troppo, e in particolare il servizio Windows deve essere installato sul server. Inoltre, il programma di console è lo sviluppo più rapido e la distribuzione più semplice, quindi alla fine ho scelto il programma di console.

14. Analisi delle esigenze

15. È necessario verificare lo stato di registrazione del sito web ogni pochi minuti, quindi è necessario System.Timers.Timer. Naturalmente, se il progetto è molto robusto o completo, si consiglia di utilizzare Quartz.NET, naturalmente si può scegliere Topshelf, Hangfire, FluentScheduler ecc.

16. Poiché è necessario verificare lo stato di registrazione del sito web, ottenere la pagina html della registrazione e quindi verificare se l'html contiene il testo "待售". Se non c'è, significa che è stato registrato. In questo caso è necessario System.Net.WebClient. Ci sono molte più opzioni per la ricerca di siti web.net, la più elementare è HttpWebRequest, HttpClient o RestSharp, tutte buone scelte.

17. Poiché è necessario notificare in tempo reale la situazione, è stato scelto il servizio di notifica短信通知 di Aliyun, poiché il codice è stato copiato direttamente per altri progetti. Certo, ci sono molte altre notifiche, come email, app, ecc. Non c'è bisogno di complicarsi la vita.

Modulo 4: Codice

Il codice è diretto, la logica e il codice sono semplici.

class Program
{
 static System.Timers.Timer timer = null;
 static void Main(string[] args)
 {
 timer = new System.Timers.Timer(2 * 60 * 1000);
 timer.Elapsed += Timer_Elapsed; ;
 timer.Start();
 Console.ReadKey();
 }
 private static void Timer_Elapsed(object sender, System.Timers.ElapsedEventArgs e)
 {
 WebClient client = new WebClient
 {
  Encoding = System.Text.Encoding.GetEncoding("utf-8")
 };
 var html = client.DownloadString("http://www.xxxx.com/xxxxx.html")
 Console.WriteLine(DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss") + "......" + "未签。")
 if (html.IndexOf("待售") == -1)
 {
  if (timer != null)
  timer.Stop();
  // Invia 5 SMS
  for (int i = 0; i < 5; i++)
  {
  // Invia SMS
  SmsMessage.Send("152****7178", "SMS_92310001", new { name = "Emrys", status = "Congratulazioni, la casa è stata venduta!" });
  Thread.Sleep(5 * 1000);
  }
 }
 }
}

Distribuzione

Beh, questa cosa non ha molto senso, genera direttamente il codice, copia la cartella Debug nel binario del directory e la mette direttamente sul server, clicca su esegui xxxxxxx.exe. La distribuzione è stata completata. ^_^

Sommario

1. Anche se all'epoca era solo un'idea improvvisa, non c'era una statistica specifica del tempo, ho preso vs e ho cominciato a sparare. Tutti i codici e le configurazioni di distribuzione non dovrebbero superare i 5 minuti. Da questo si può vedere che .Net fa un buon lavoro in alcuni aspetti con il supporto di vs.

2. Ora .Net core è open source, cross-platform e veloce, C# "linguaggio bello", vs IDE al primo posto nel cosmo, non dico altro, spero che .Net vada sempre meglio.

Come ha spiegato l'editor a tutti di come realizzare la monitoraggio in tempo reale delle pagine web in 5 minuti di Asp.Net, speriamo che sia utile a tutti. Se avete qualsiasi domanda, lasciate un commento, l'editor risponderà tempestivamente. In questo senso, ringraziamo anche tutti i sostenitori del sito tutorial di urla!

Dichiarazione: il contenuto di questo articolo è stato tratto da Internet, il copyright spetta agli autori, il contenuto è stato contribuito e caricato autonomamente dagli utenti di Internet, questo sito non detiene il diritto di proprietà, non è stato editato manualmente e non assume responsabilità per le relative responsabilità legali. Se trovi contenuti sospetti di violazione del copyright, ti preghiamo di inviare una e-mail a: notice#oldtoolbag.com (al momento dell'invio dell'e-mail, sostituisci # con @) per segnalare, fornendo prove pertinenti. Una volta verificata, questo sito rimuoverà immediatamente il contenuto sospetto di violazione del copyright.

Ti potrebbe interessare