Jump to content

Czarnowłosy

Members
  • Content Count

    1
  • Joined

  • Last visited

Community Reputation

0 Neutral

About Czarnowłosy

  • Rank
    Newbie
  1. Cześć, chcę stworzyć program wyświetlający wyniki wyszukiwania internetowego z aktywnymi linkami, jak DuckDuckGo. Używam przeglądarki PhantomJS bez interfejsu. Pobieram dane z rezultatów wyszukiwarki Qwant Lite. Teraz na okienku aplikacji wypisanych jest tylko kilka rezultatów (tytuły, adresy URL i opisy stron) bez odnośników. Podam przykład: Zauważyłem, że są pokazywane wszystkie skopiowane z Qwant Lite tytuły bez właściwości PropertyUrl. Ta właściwość określa, do jakiej strony trafi użytkownik po kliknięciu lewym przyciskiem myszy w tytuł. Tytuły nie są jednak odnośnikami do jakiejkolwiek strony. Jak wyświetlić wszystkie rezultaty wyszukiwarki z linkami? bool search_end = false, page_se = false; byte page = 0; // Numer rezultatu while (!search_end) { try { while (!page_se) { try { Run title = new Run(phantomDriver.FindElements(By.ClassName("result")).ElementAt(page).FindElement(By.ClassName("title")).Text); // Tytuł strony Hyperlink hyperlink = new Hyperlink(title) { NavigateUri = new Uri(phantomDriver.FindElements(By.ClassName("result")).ElementAt(page).FindElement(By.ClassName("url")).Text) }; Results.Inlines.Add(hyperlink); // Results - Nazwa elementu TextBlock | Dodawanie linku Results.Text += Environment.NewLine; Results.Text += phantomDriver.FindElements(By.ClassName("result")).ElementAt(page).FindElement(By.ClassName("url")).Text + Environment.NewLine; // Dodawanie adresu URL Results.Text += phantomDriver.FindElements(By.ClassName("result")).ElementAt(page).FindElement(By.ClassName("desc")).Text + Environment.NewLine + Environment.NewLine; // Dodawanie opisu ++page; // Pobieranie danych z następnego wyniku } catch { page_se = true; // Koniec kopiowania informacji z obecnej strony wyszukiwarki } } phantomDriver.FindElement(By.ClassName("next")).Click(); // Przejście do następnej strony page = 0; } catch // Zamknięcie przeglądarki { phantomDriver.Quit(); search_end = true; } }
×
×
  • Create New...