Szukaj na blogu

Ostrzeżenia o ciasteczkach i innych tego typu głupotach

Napisało do mnie ostatnio google bo chciało abym na blogu pytał czytelnika o zgodę na to aby go śledzić.

Mi to do niczego nie potrzebne, ja nikogo śledzić nie zamierzam, no ale skoro oni potrzebują i grzecznie poprosili to zapytam. Ostatecznie mamy od nich całkiem niezły hosting za darmo.


Przy okazji zwróciłem uwagę na inne strony które zadają takie pytania. Zdecydowana większość robi to niewłaściwie. Najwyraźniej ktoś zrobił to źle a potem inni po nim kopiowali, a przynajmniej tak to wygląda.


Dlatego postanowiłem opisać na blogu jak powinno działać takie ostrzeżenie, podaje też gotowe rozwiązanie które można skopiować.

Jeśli nie wiecie jak/albo nie chce się wam pisać tego samemu proszę skopiujcie kod ode mnie a nie powtarzajcie po tych co robią to źle.



Aby skorzystać ze skryptu trzeba umieścić gdzieś na stronie pusty <div> lub inny element o id="warn" to wewnątrz niego wyświetlane będzie ostrzeżenie/pytanie - ale tylko jeśli będzie ono potrzebne, jeśli nie będzie potrzebne <div> pozostanie pusty.
Skrypt wklejamy gdziekolwiek wewnątrz znaczników <script>
Treść komunikatów i adresy pod które prowadzą linki oczywiście można zmienić.

function getCookie(nazwa)
{
    if (document.cookie!="") {
        var cookies=document.cookie.split("; "); 
        for (i=0; i<cookies.length; i++) {
            var nc=cookies[i].split("=")[0];
            var vc=cookies[i].split("=")[1];
            if (nc===nazwa) {
                return unescape(vc);
            }
        }
    }
return 0;
}

function setCookie(nazwa, wartosc, dni)
{
    var data = new Date();
    data.setTime(data.getTime()+(dni*24*60*60*1000));          
    var expires = "; expires="+data.toGMTString();
    document.cookie = nazwa+"=" + wartosc + expires + "; path=/";
}

if (navigator.cookieEnabled && window.navigator.doNotTrack!="yes" && window.navigator.doNotTrack!="1")
if (getCookie("zgoda")!=1)
{
var w=document.getElementById('warn');
w.innerHTML="<h3>Z konfiguracji twojej przeglądarki wynika, że prawdopodobnie chcesz być śledzony(a)<br><a onClick='setCookie(\"zgoda\", 1, 7);document.location.href=document.location.href;' href=''>Potwierdzam chcę, nie ostrzegaj ponownie</a><br><a href='http://miniskrypt.blogspot.com/p/blog-page.html'>Nie zgadzam się na śledzenie</a></h3>";
}


Zwróćcie uwagę na to że:
  1. Nie wyświetlam ostrzeżenia tym którzy mają wyłączone ciasteczka w przeglądarce - oni nie będą śledzeni. Większość autorów takich ostrzeżeń zapomina o prostym sprawdzeniu navigator.cookieEnabled
  2. Nie wyświetlam ostrzeżeń tym którzy nie zgodzili się na bycie śledzonym (i nie muszę ich w żaden sposób zapamiętywać), wystarczy w skrypcie sprawdzić czy ktoś sobie ustawił Do Not Track. Ich śledzić nie wolno (ani ciasteczkami ani niczym innym) więc nie ma o czym ich ostrzegać.
Takie właśnie zachowanie nakazuje polskie Prawo Telekomunikacyjne, konkretnie Art 173 punkt 1 b)


Zadając pytanie nie pytajcie ogólnie o ciasteczka - bo o użycie ciasteczek pytać nie trzeba, zapytać trzeba tylko jeśli chce się przy ich pomocy kogoś śledzić (a to tylko jakiś niewielki ułamek wszystkich zastosowań ciasteczek). Poza tym pamiętajcie, że są też inne mechanizmy śledzenia użytkowania nie oparte na ciasteczkach (np local storage, flasz), pytając o zgodę tylko na ciasteczka nie dostaniecie zgody na wykorzystanie tych innych mechanizmów.
Proste pytanie typu „Czy zgadzasz się aby Cię śledzić?” bez wdawania się w techniczne szczegóły jest właściwsze (szczegóły może sobie poczytać ktoś kto jest zainteresowany i kliknie w linka a tam już trzeba wymienić wszytko dokładnie).
Oczywiście na tak zadane pytanie większość odpowie nie (bo kto by chciał być śledzony). No ale mi to nie robi różnicy. I wam autorom blogów i niewielkich stron (nie zajmujących się ściśle sprzedażą czegoś) też nie powinno to robić różnicy.

Jeśli jakimś cudem użytkownik zgodzi się na śledzenie, ustawiam mu ciasteczko ważne tydzień (proste zgoda=1) i przez ten czas nie wyświetlam ponownie pytania. Jeśli uważacie, że 7 dni to za mało albo za dużo to zamiast 7 można podać inną liczbę.

20 komentarzy:

  1. Witam mam pytanie jak pobierać z tvnplayer? Ponieważ działa pobieranie w niskiej jakości, ale nie w HD, a kiedyś normalnie działało :
    http://player.pl/seriale-online/szkola-odcinki,2395/odcinek-148,S00E148,53543.html
    Pozdrawiam

    OdpowiedzUsuń
    Odpowiedzi
    1. Serwer udostępnia ten odcinek tylko z jedną (najniższą) jakością, nic na to nie poradzę.

      Usuń
  2. Dzień dobry,

    Mam wielką prośbę o stworzenie takiego małego skryptu do przeglądarki, by po wejściu na adres kanału rss można było zasubskrybować go w usłudze Flowreader.

    Adres do subskrypcji: http://flowreader.com/subscribe?url=www.example.com

    Pozdrawiam!

    OdpowiedzUsuń
    Odpowiedzi

    1. javascript:(function(){document.location.href='http://flowreader.com/subscribe?url='+document.location.href;})();

      Usuń
  3. Mam prośbę. Można prosić o skrypt do uruchamiania filmów z polsatnews.pl

    Sprawdzałem niektóre skrypty, ale nie działały. Pozdrawiam i z góry dziękuję.

    OdpowiedzUsuń
    Odpowiedzi
    1. Zasadniczo mógł bym napisać prosty skrypt ale nie wiem jest to potrzebne bo te filmiki można łatwo pobrać bez skryptu.

      W firefoksie zaznacz filmik (możesz razem z kawałkiem tekstu nad i pod filmem) kliknij prawym i wybierz z menu "pokaż źródło zaznaczenia"
      Dostaniesz bezpośredni adres do filmu.

      Jeśli miał bym pisać skrypt to co twoim zdaniem powinien robić taki skrypt jeśli znajdzie na stronie więcej niż jeden film?

      Usuń
    2. Większość małych filmików jest w HTML5 i przy wtyczce httpewerywhere działa to bardzo dobrze.

      Gorzej jest w zakładce "programy", gdzie cała publicystyka jest w silverlight.

      Np.

      http://www.polsatnews.pl/wideo-program/panstwo-w-panstwie-maciej-dobrowolski_6332698/

      I tutaj jest tego więcej:

      http://www.polsatnews.pl/nasze-programy/

      Właśnie o ten silverlight chodzi. Bo tak jak pisałeś małe filmiki można pobrać bez żadnych skryptów.

      Pozdrawiam.

      Usuń
  4. Witam!
    Z player.pl, dwa ostatnie wydania faktów, skrypty przestały pobierać. To koniec, czy tylko chwilowe problemy?
    W temacie 3w1 nie chciał mi się post wyświetlić, dlatego tutaj proszę.

    OdpowiedzUsuń
    Odpowiedzi
    1. Post się wyświetla (dlatego niedługo usunę duplikat), a skrypty pobierają wszystkie fakty, nawet w HD.

      Może to były jakieś przejściowe problemy które zostały w ciągu ostatnich kilku godzin poprawione a może masz coś nie tak z internetem.

      Usuń
    2. Z internetem wszystko mam ok. Niestety, żaden pobieracz mi nie działa. Pobierałem tylko fakty, więc jakoś to przeżyję. Pozdrawiam.

      Usuń
    3. Z tym internetem to ja poważnie pisałem, może nie masz wpisu w polskim revdns przez co tvnplayer myśli, że łączysz się z zagranicy i blokuje dostęp do faktów.

      Usuń
    4. Ale jak włączam wtyczkę Silver, to bez problemu mi program odtwarza. Pobieracz zawsze mi działał, jedyną zmianą ostatnio była aktualizacja FF do ver. 42.

      Usuń
    5. Cały wątek można usunąć, bo z niezrozumiałych powodów pobieracz zaczął działać.
      Niezrozumiałych, bo sprawdzałem też na innym komputerze, u innego dostawcy internetu - też nie działał i nagle zonk!
      Dzięki, że robisz takie fajne rzeczy!

      Usuń
    6. Da rade pobrać to wideo?
      http://dziendobry.tvn.pl/wideo,2064,n/glodujacy-ojciec-walczy-o-syna,14072.html

      Usuń
  5. @Marek - wysłałam maila na marekd@jabberpl.org ale chyba nie dotarł

    SMTP error from remote server for RCPT TO command, host: *** reason: 550 5.1.1 <***>: Recipient address rejected: User unknown
    in virtual alias table

    OdpowiedzUsuń
    Odpowiedzi
    1. Bo to nie jest mój adres email tylko jebber ID.

      Usuń
    2. Dzięki za odp. Już znalazłam właściwego gmaila z linka ;).

      Usuń
  6. Witam próbuję pobrać odcinki serialu Szkoła z playera, ale niestety nie działa jakość HD, a jeszcze jakieś 2-3 tygodnie temu działała. Co mogę z tym zrobić? Wcześniej normalnie działało HD i średnia a teraz żadnego nie da się pobrać w HD. Pozdrawiam

    OdpowiedzUsuń
    Odpowiedzi
    1. Zmienił się stosowany przez nich format plików przewidzimy na telewizory samsung.

      Dlatego obecna wersja skryptu pobiera pliki przewidziane na androida a tam nie ma jakości HD.

      Mógł bym zamieścić na blogu skrypt do pobierania tych plików samsungowych (zresztą nawet gdzieś się pojawił na forum) tylko nie bardzo jest czym je odtwarzać.

      Może uda się coś z tym zrobić bo ffmpeg prawie sobie z nimi radzi, zaczyna odtwarzać jednak wiesza się po kilkunastu najdalej kilkudziesięciu sekundach. Gdyby udało mi się go poprawić można by pobrane pliki odtwarzać dowolnym odtwarzaczem korzystającym z biblioteki ffmpeg albo konwertować na jakiś inny format za pomocą samego ffmpega.

      Usuń