Zawartość html strony po załadowaniu.

Zawartość html strony po załadowaniu.
olesio
  • Rejestracja:prawie 17 lat
  • Ostatnio:około 3 lata
  • Lokalizacja:Szczecin
  • Postów:4191
0

Witam.

Dalej duszę się z problemem pewnie dla znawców Java Script banalnym i w wolnej chwili rozkminiam skryptozakładkę na bazie problemu opisanego w wątku https://4programmers.net/Forum/JavaScript/316098-sposob_na_pobranie_kazdej_strony_po_https_w_skryptozakladce
I wiem już że problemem jest mechanizm cross domain, nie ugryzłem go, więc zapytam inaczej, Ustalam na szybko wyrażeniami regularnymi adres jakiejś strony, skryptozakładka przekierowuje przeglądarkę kodem typu document.location.href = url; na tę stronę.

I pytanie jak teraz po załadowaniu tej strony, mieć jej zawartość kodu HTML? Ponieważ w zmiennej document.body.innerHTML. Ponieważ nadal widzę testowo po dodaniu ,size i lamerskim niby debugowaniu konsolą, jest zawartość oryginalnie otwartej podstrony a nie nowej. Cale kombinacje są po to by po wyłuskaniu adresu do pliku mp4 po otwarciu nowej podstrony przekierować adres na ten plik i ładnie się on załaduje nam w przeglądarce odtwarzając się.

Czy utrudnia coś tutaj adblock? Prosił bym o jakieś naprowadzenie, bo jestem jak się domyślacie zielony w temacie JS i skryptozakładek. Szukam różnych przykładów i podstawiam w swoj kod ale z postępem ostatecznego rozwiązania stoję w miejscu i bez pomocy Was się nie uda :) Dzięki z góry.


Pozdrawiam.
neves
  • Rejestracja:prawie 22 lata
  • Ostatnio:około 9 godzin
  • Lokalizacja:Kraków
  • Postów:1114
0

Jak już sam zauważyłeś przeskoczenie "same origin policy" z poziomu kodu wewnątrz przeglądarki nie jest prostą sprawą, kiedyś próbowałem to zrobić pod Firefoxem za pomocą skryptów użytkownika, które pewnie są odpowiednikiem tego czego używasz w Chromie i poległem.

Najłatwiej wyciąganie tego urla byłoby pewnie zrealizować z jakiegoś środowiska które udostępnia Ci kontrolkę przeglądarki (C# + winforms + webbrowser) gdzie możesz do woli manipulować stroną.

w każdym razie hasło do szukania w googlu to "bypass same origin policy" + to czego używasz w tym chromie.


edytowany 1x, ostatnio: neves
olesio
  • Rejestracja:prawie 17 lat
  • Ostatnio:około 3 lata
  • Lokalizacja:Szczecin
  • Postów:4191
0

Hej. No dzięki, wiem już teraz po ogólnym wytłumaczeniu na jakiejś polskiej stronie przykładów obsługi XMLHttpRequest dlaczego tak pilnowany jest ten mechanizm CROSS Domain, bo sprawny koder mógłby ukryć ramkę itp i zrobić takie myki że odczytać mógłby coś z innych otwartych zakładek użytkownika, na przykład jeśli były zalogowany na stronę swojego banku było by to bardzo złe. Przygotowanie odpowiedniej strony w PHP na shelowym koncie jakie mam w mydevil która odczyta zdalnie coś i prześle jako JSON a także zwróci to z użyciem kodu to co trzeba żeby w nagłówkach były te pożądane "Orgin-y" też nie ma sensu. Bo kluczowym problemem jest blokowanie skryptów przez stronę macierzystą, która ma bazę IP do blokad VPN-ów itp i najprostsze to wykonywanie kodu po stronie użytkownika

I tutaj JS oraz skrypto zakładka zdały by się idealnie. Przejście na stronę embed na vidoza.net już następuje jak należy, ale teraz za to w chwili obecnej nie daję rady ogarnąć jak pobrać nową treść tej strony, gdybym dobrał się do niej, to wyłuskuje adres do v.mp4, po czym ponownie ustawiam na niego adres docelowy i otwiera się plik video. Czy takie moje kombinacje również muszą spełznąć na niczym bo właśnie przez ten wspomniany mechanizm CROSS domain wszystko jest utrudnione? Chyba że udało by się POST-em wysłać jakoś mi skutecznie ciasteczka sesji dotyczące tej strony do skryptu w PHP na jakimś swoim koncie www i on by odpytał o resztę i zwrócił adres pliku video w formacie JSON, ale wiadomo że może się to odbyć na serwerze który nagle załapał blokadę i sytuacja jest się powtarza ;(

A zatem jakby błędne koło trwa. Chyba że można takie odpytania robić poprzez własne wtyczki do Fire Fox, ale tam pewnie używany jest jeżeli dobrze kojarzę również Java Script i pewnie poddany jest podobnym obostrzeniom. Ale nigdy też nie pisałem żadnych pluginów dla przeglądarek www, więc znowu rzeźbię w kompletnie nieznanym sobie temacie, bazując na wyszukanych przykładach i się będę motać ;/


Pozdrawiam.
Kliknij, aby dodać treść...

Pomoc 1.18.8

Typografia

Edytor obsługuje składnie Markdown, w której pojedynczy akcent *kursywa* oraz _kursywa_ to pochylenie. Z kolei podwójny akcent **pogrubienie** oraz __pogrubienie__ to pogrubienie. Dodanie znaczników ~~strike~~ to przekreślenie.

Możesz dodać formatowanie komendami , , oraz .

Ponieważ dekoracja podkreślenia jest przeznaczona na linki, markdown nie zawiera specjalnej składni dla podkreślenia. Dlatego by dodać podkreślenie, użyj <u>underline</u>.

Komendy formatujące reagują na skróty klawiszowe: Ctrl+B, Ctrl+I, Ctrl+U oraz Ctrl+S.

Linki

By dodać link w edytorze użyj komendy lub użyj składni [title](link). URL umieszczony w linku lub nawet URL umieszczony bezpośrednio w tekście będzie aktywny i klikalny.

Jeżeli chcesz, możesz samodzielnie dodać link: <a href="link">title</a>.

Wewnętrzne odnośniki

Możesz umieścić odnośnik do wewnętrznej podstrony, używając następującej składni: [[Delphi/Kompendium]] lub [[Delphi/Kompendium|kliknij, aby przejść do kompendium]]. Odnośniki mogą prowadzić do Forum 4programmers.net lub np. do Kompendium.

Wspomnienia użytkowników

By wspomnieć użytkownika forum, wpisz w formularzu znak @. Zobaczysz okienko samouzupełniające nazwy użytkowników. Samouzupełnienie dobierze odpowiedni format wspomnienia, zależnie od tego czy w nazwie użytkownika znajduje się spacja.

Znaczniki HTML

Dozwolone jest używanie niektórych znaczników HTML: <a>, <b>, <i>, <kbd>, <del>, <strong>, <dfn>, <pre>, <blockquote>, <hr/>, <sub>, <sup> oraz <img/>.

Skróty klawiszowe

Dodaj kombinację klawiszy komendą notacji klawiszy lub skrótem klawiszowym Alt+K.

Reprezentuj kombinacje klawiszowe używając taga <kbd>. Oddziel od siebie klawisze znakiem plus, np <kbd>Alt+Tab</kbd>.

Indeks górny oraz dolny

Przykład: wpisując H<sub>2</sub>O i m<sup>2</sup> otrzymasz: H2O i m2.

Składnia Tex

By precyzyjnie wyrazić działanie matematyczne, użyj składni Tex.

<tex>arcctg(x) = argtan(\frac{1}{x}) = arcsin(\frac{1}{\sqrt{1+x^2}})</tex>

Kod źródłowy

Krótkie fragmenty kodu

Wszelkie jednolinijkowe instrukcje języka programowania powinny być zawarte pomiędzy obróconymi apostrofami: `kod instrukcji` lub ``console.log(`string`);``.

Kod wielolinijkowy

Dodaj fragment kodu komendą . Fragmenty kodu zajmujące całą lub więcej linijek powinny być umieszczone w wielolinijkowym fragmencie kodu. Znaczniki ``` lub ~~~ umożliwiają kolorowanie różnych języków programowania. Możemy nadać nazwę języka programowania używając auto-uzupełnienia, kod został pokolorowany używając konkretnych ustawień kolorowania składni:

```javascript
document.write('Hello World');
```

Możesz zaznaczyć również już wklejony kod w edytorze, i użyć komendy  by zamienić go w kod. Użyj kombinacji Ctrl+`, by dodać fragment kodu bez oznaczników języka.

Tabelki

Dodaj przykładową tabelkę używając komendy . Przykładowa tabelka składa się z dwóch kolumn, nagłówka i jednego wiersza.

Wygeneruj tabelkę na podstawie szablonu. Oddziel komórki separatorem ; lub |, a następnie zaznacz szablonu.

nazwisko;dziedzina;odkrycie
Pitagoras;mathematics;Pythagorean Theorem
Albert Einstein;physics;General Relativity
Marie Curie, Pierre Curie;chemistry;Radium, Polonium

Użyj komendy by zamienić zaznaczony szablon na tabelkę Markdown.

Lista uporządkowana i nieuporządkowana

Możliwe jest tworzenie listy numerowanych oraz wypunktowanych. Wystarczy, że pierwszym znakiem linii będzie * lub - dla listy nieuporządkowanej oraz 1. dla listy uporządkowanej.

Użyj komendy by dodać listę uporządkowaną.

1. Lista numerowana
2. Lista numerowana

Użyj komendy by dodać listę nieuporządkowaną.

* Lista wypunktowana
* Lista wypunktowana
** Lista wypunktowana (drugi poziom)

Składnia Markdown

Edytor obsługuje składnię Markdown, która składa się ze znaków specjalnych. Dostępne komendy, jak formatowanie , dodanie tabelki lub fragmentu kodu są w pewnym sensie świadome otaczającej jej składni, i postarają się unikać uszkodzenia jej.

Dla przykładu, używając tylko dostępnych komend, nie możemy dodać formatowania pogrubienia do kodu wielolinijkowego, albo dodać listy do tabelki - mogłoby to doprowadzić do uszkodzenia składni.

W pewnych odosobnionych przypadkach brak nowej linii przed elementami markdown również mógłby uszkodzić składnie, dlatego edytor dodaje brakujące nowe linie. Dla przykładu, dodanie formatowania pochylenia zaraz po tabelce, mogłoby zostać błędne zinterpretowane, więc edytor doda oddzielającą nową linię pomiędzy tabelką, a pochyleniem.

Skróty klawiszowe

Skróty formatujące, kiedy w edytorze znajduje się pojedynczy kursor, wstawiają sformatowany tekst przykładowy. Jeśli w edytorze znajduje się zaznaczenie (słowo, linijka, paragraf), wtedy zaznaczenie zostaje sformatowane.

  • Ctrl+B - dodaj pogrubienie lub pogrub zaznaczenie
  • Ctrl+I - dodaj pochylenie lub pochyl zaznaczenie
  • Ctrl+U - dodaj podkreślenie lub podkreśl zaznaczenie
  • Ctrl+S - dodaj przekreślenie lub przekreśl zaznaczenie

Notacja Klawiszy

  • Alt+K - dodaj notację klawiszy

Fragment kodu bez oznacznika

  • Alt+C - dodaj pusty fragment kodu

Skróty operujące na kodzie i linijkach:

  • Alt+L - zaznaczenie całej linii
  • Alt+, Alt+ - przeniesienie linijki w której znajduje się kursor w górę/dół.
  • Tab/⌘+] - dodaj wcięcie (wcięcie w prawo)
  • Shit+Tab/⌘+[ - usunięcie wcięcia (wycięcie w lewo)

Dodawanie postów:

  • Ctrl+Enter - dodaj post
  • ⌘+Enter - dodaj post (MacOS)