Hogyan lehet egy C#, Windows Forms applikációban egy webbrobser objectbol kinyerni az összes linket?
Rengeted megoldás van a netten de egy sem működik, meg az a módszer sem ami elméletileg direkt erre lett kitalálva.
HtmlElementCollection links = helpdeskWebBrowser.Document.Links;
igen a document.links nem terít vissza semmit és a getelementbytagname("a"); sem :(
pedig, a browserbe betöltődik az oldal de nem lát rajta egy linketsem
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;
namespace WindowsFormsApplication1
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private void button1_Click(object sender, EventArgs e)
{
{
WebBrowser web = new WebBrowser();
web.NewWindow += new CancelEventHandler(web_NewWindow);
web.Navigate(" http://www.gyakorikerdesek.hu/szamitastechnika__programozas_..
while (web.ReadyState != WebBrowserReadyState.Complete)
{
Application.DoEvents();
}
HtmlElementCollection ht = web.Document.Links;
List<string> urls = new List<string>();
foreach (HtmlElement h in ht)
{
try
{
if ((h.GetAttribute("href") != null))
{
urls.Add(h.GetAttribute("href"));
}
}
catch
{ }
}
foreach (string url in urls) listBox1.Items.Add(url);
}
}
void web_NewWindow(object sender, CancelEventArgs e)
{
e.Cancel = true;
}
}
}
Ez nekem működik.
Kapcsolódó kérdések:
Minden jog fenntartva © 2024, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!