Rad bi nekaj naredil, pa še ne vem točno kako bi se tega lotil. Rad bi naredil program, ki bi mi spremljal del spletne strani - zajemal sliko v realnem času - in ko bi bila slika enaka vzorčni, bi se izvedla neka akcija. Uporabil pa bi C#, vendar ne vem ali se bo to dalo izvest? Kaj menite.
Avtor: bobi, objavljeno na portalu SloDug.si (Arhiv)
bobi - četrtek, 27. maj 2010
Ja ker je Flash... sem poskusil dat v webbrowser in zajet sliko ampak mi jo shrani le ob začetku... ko pa zaženem timer pa ne več : public Form1() { InitializeComponent(); web1 = new WebBrowser(); web1.Height = 1000; web1.Width = 700; web1.Navigate("http://www..."); web1.ScrollBarsEnabled = true; web1.ScriptErrorsSuppressed = true; panel1.Controls.Add(web1); while (web1.ReadyState != System.Windows.Forms.WebBrowserReadyState.Complete) System.Windows.Forms.Application.DoEvents(); System.Threading.Thread.Sleep(1500); trenutnaSlika = new Bitmap(100, 100); this.web1.DrawToBitmap(trenutnaSlika, new Rectangle(0, 0, 100, 100)); vzorcnaSlika = trenutnaSlika; this.pictureBox1.BackgroundImage = trenutnaSlika; pictureBoxVzorec.BackgroundImage = vzorcnaSlika; bool ujemanje = doImagesMatch(); label1.Text = "ujemanje: " + ujemanje; } private void captureScreen() { while (web1.ReadyState != System.Windows.Forms.WebBrowserReadyState.Complete) System.Windows.Forms.Application.DoEvents(); System.Threading.Thread.Sleep(1500); trenutnaSlika = new Bitmap(100, 100); this.web1.DrawToBitmap(trenutnaSlika, new Rectangle(0, 0, 100, 100)); this.pictureBox1.BackgroundImage = trenutnaSlika; } private void label1_Click(object sender, EventArgs e) { timer1.Enabled = true; } private void tick(object sender, EventArgs e) { stevec++; captureScreen(); label1.Text = "ujemanje: " + doImagesMatch()+" stevec: "+stevec ; } 1.sliko shranim kar kot Vzorčno sliko... trenutno sliko pa tudi shrani. Ko pa se zažene timer in captureScreen(), pa to ne dela več... pa ne vem zakaj..
KrofDrakula - četrtek, 27. maj 2010
Ali mora res biti zajem slike? Parsanje HTML ne bi bilo dovolj?