Witam!
Potrzebuję zrobić aplikację która co jakiś czas będzie pobierała kod strony targeo.pl i wyciagała dane ze znacznika . Jak na razie pobieram źródło strony, jednak w nim nie jest zawarty ten znacznik, natomiast widać go np w narzędziu 'zbadaj stronę'. I tu moje pytanie, jak się do niego dostać?
Na tej stronie nie ma takiego tagu z takim ID. napisz o który element ci chodzi i podaj dokładny adres strony skopiowany z paska adresu.
Jak na razie pobieram źródło strony, jednak w nim nie jest zawarty ten znacznik, natomiast widać go np w narzędziu 'zbadaj stronę'. I tu moje pytanie, jak się do niego dostać?
Zapewne znacznik pojawia się wskutek wykonania kodu JS, zatem musiałbyś zaciągnąć do tej roboty jakiś cały silnik przeglądarki...
tak, znacznik ten pojawia się dopiero po wykonaniu zapytania przykładowo http://mapa.targeo.pl/1_pozna%C5%84,,2_wroc%C5%82aw,
dopiero zaczynam swoją przygodę z C# ale rozumiem, że wyciągnięcie wartości tego znacznika nie jest łatwe do wykonania, tak?
A jakieś inne propozycje jak mógłbym zbierać informacje o czasie przejazdu co jakiś czas?
Jak pisal patryk najprawdopodowniej w kodzie strony tag span jest tylko markerem gdzie dociagana jest dynamicznie przez javascript zawartosc. Jezeli w naglowhu znajdziesz tag script z atrybutem źródło wskazujący jquery to szukałbym w kodzie strony tekstu #nazwa_pola_id. gdzies tam bedzie zaciaganie zawartosci. Wtedy zamiast wywalywac strone z tagiem bedziesz mogl pobierac od razu zawwartosc.
Sorki ze tylko opisuje, pisze na tablecie i tu ciężko o analizę kodów strony. Postaram sie jutro jak nie dostaniesz odpowiedzi.
Przykro mi, ale znalezienie co wgrywa dane d tego tagu, lub co wgrywa dane i generuje ten tag jest dość skomplikowane. Dużo własnego kodu w JavaScripcie... dożo wywołań do serwera.
Jeżeli bardzo CI na tym zależy to proponuje Chrome i jego narzędzia developerskie... do śledzenia wywołań i debugowania.
Innym sposobem jest osadzanie przeglądarki. i wyświetlenie strony. Jak już się wszytko załaduje to wtedy wyszukanie znacznika i przeczytanie jego zawartości. Każde załadowanie dokumentu nawet prze AJAXa zgłasza zdarzenie DocumentLoaded. Jednak zadziała to tylko w aplikacji dekstopowej, na serwer nie polecam wczytanie osadzonej przeglądarki zabiera sporo zasobów... a sama kontrolka WebControl lubi wyciekać.
Ja odpadam :(