PHP: sprawdzanie pozycji w Google
O ile dobrze się orientuję, wiele osób szuka takie skryptu. Dlatego postanawiam się z Wami takim podzielić. Tym razem jest to sprawdzanie pozycji w Google. Wiele osób pewnie nie raz chciało mieć coś takiego, co by zautomatyzowało sprawdzanie pozycji, ale z różnych powód nie dało rady - np. brak zdolności programowania, brak wiedzy czy czasu. Mam nadzieję, że podobnie jak w przypadku skryptu do pingowania sitemap, ten też okaże się bardzo przydatny.
Na początek wymagania "sprzętowe". Jeżeli chcesz korzystać z tego skryptu, to musisz mieć na Twoje konto WWW musi mieć następujące parametry (lub wyższe):
- PHP w wersji 5,
- włączoną bibliotekę cURL
Zasady korzystania są proste. Z tej klasy można korzystać do woli zarówno w projektach komercyjnych jak i niekomercyjnych. Jedynie o co proszę, to nie usuwanie komentarzy w pliku, które informują o autorze klasy/skryptu. Tyle chyba jesteście w stanie zrobić? Nie każę słać kroci na moje tajne konto bankowe :).
Tyle jeśli chodzi o informacje podstawowe. Teraz opiszę jak korzystać z klasy.
Tworzymy nowy obiekt:
$pozycja = new checkPosition( 'pozycjonowana fraza', 'http://sprawdzastrona.pl' );
Proste, prawda? Za pomocą tej linijki inicjujemy obiekt oraz ustawiamy niezbędne dane do poprawnego działania skryptu. Tutaj muszę napisać drobną uwagę: poprawny adres URL sprawdzanej strony musi się zaczynać od "http://". Kolejna ważna rzecz, to taka, że dla skryptu nie ma różnicy czy adres zawiera www czy nie. Zrobiłem tak, że www jest wycinane ze sprawdzanego adresu oraz porównywanych adresów (z tego co pokazuje Google). Dzięki temu sprawdzanie pozycji jest prostsze. Aha. Skrypt porównuje tylko i wyłącznie domeny. Więc jeśli w SERPach Twoja strona pojawia się na 14. pozycji z adresem http://sprawdzanapozycja.pl/podstrona.html to strona zostanie zliczona. Oczywiście można się bawić w wyrażenia regularne i sprawdzanie czy jeden string zawiera kawałek drugiego - tylko po co komplikować sobie sprawę? A tak operujemy na domenach.
Teraz aby sprawdzić jaką pozycję ma nasza strona wystarczy wywołać metodę:
$pozycja->search();
W tym momencie skrypt łączy się z Google, pobiera wyniki, mieli, mieli i mieli. Aby zobaczyć jaką pozycję ma nasza strona wystarczy odczytać jaką wartość ma zmienna $pozycja->iPosition. Np. tak:
echo $pozycja->iPosition;
Kilka uwag na koniec
Jest jeszcze możliwość, aby definiować DC na jakim ma być sprawdzane. Jest to dobra opcja gdy nie mamy własnego serwera proxy, bo przecież wiadomo, że zautomatyzowane odpytywanie Google łamie regulamin wyszukiwarki i można dostać bana za to :). Kolejna rzecz to taka, że czasami chcemy sprawdzić kilka(naście) fraz. Sam korzystam z takiego rozwiązania już ponad 2 lata i sprawdza się znakomicie - jedyna wada tego jest taka, że trzeba mieć kilka serwerów (chodzi o różne IP). Zmienna $aDC zawiera tablicę z działającymi DC Google. Można ją rozbudować o kolejne elementy podając adresy IP. Wtedy podczas sprawdzania będzie losowany DC na którym sprawdzać będziemy pozycję. W Wasze ręce oddaję skrypt z wprowadzonym tylko jednym DC - www.google.pl :).
Skrypt sprawdza tylko pierwsze 100 wyników. Jeżeli chcesz zmienić ilość sprawdzanych maksymalnych pozycji to wystarczy zmienić parametr $iLimit.
Skrypt można pobrać tutaj.
To tyle z mojej strony. Miłego katowania Google i sprawdzania pozycji. Jeżeli macie jakieś pytnia, uwagi czy problemy, to piszcie tylko w komentarzach i tylko w komentarzach będę odpowiadał.
Aktualizacja: ostateczna wersja skryptu jest dostępna pod tym adresem.
Komentarze 34
Aj waj, chyba tekst pisany pospiesznie, bo widzę kilka błędów w zdaniach. ;)
Fajna sprawa, na pewno przyda się przy 'domorosłych' sprawdzaniach różnych fraz, żeby nie bawić się i nie szukać w samym Google. Można sobie nawet jakiś skrypcik z historią z tego skomponować. Swoją drogą ciekawe co na to Frelo i jego Googlemon :>
Jeżeli, natomiast ktoś szuka już gotowca do sprawdzania pozycji i paru innych narzędzi do pozycjonowania to polecam skrypt Seo Panel. Do jego funkcji należy również sprawdzanie w bingu i yahoo i sporządzenia wykresów. Strona projektu: http://www.seopanel.in
Skrypt jest bezpłatny.
Andrzej - co po niektorzy z tego skorzystaja, jednak mysle ze spora czesc ludzi chce gotowego rozwiazania i nie bedzie takiego narzedzia sama tworzyc. Nie wiem jak googlemon ale wiekszosc tego typu skryptow dostarcza wielu dodatkowych informacji ktore ulatwiaja prace.
z pewnoscia wpis jest bardzo wartosciowy.
zapraszam do testowania podobnego narzędzia do sprawdzania pozycji w google: http://80.82.17.86/
Dzięki wielkie.
Właśnie czegoś takiego potrzebowałem, no może nie do sprawdzania wyników google, ale to już nie problem dostosować skrypt do swoich potrzeb :)
gracias!
Podziękowania za narzędzie. Pozwolisz, że odrobinę pomarudzę ;)
Myślę, że takie narzędzie ma już większość z nas, mi osobiście w narzędziach tego typu brakuje dosyć istotnej rzeczy - sprawdzania kolejnych wystąpień strony na daną frazę. Num=100 niestety odpada bo wyniki dla domeny są łączone i nie wyświetla się realna pozycja. Przy /ie to fajnie działało, jednak tą metodę sprawdzania już usunęli. Może ma ktoś pomysł jak to sprawdzić, oczywiście zwykłe sprawdzanie po 10 wyników nie wchodzi w grę dla dużej ilości fraz.
Warto by było dopracować tą klasę, tworzenie obiektu dla każdego słowa kluczowego jest marnotrawstwem, lepiej w czasie tworzenia obiektu, do konstruktora przekazać tylko url witryny, a tablicę z pozycjami za pomocą odpowiedniej metody.
Dzieki, świetny artykulik, pomimo kilku błędów ;)
Cieszę się, że opublikowałeś takie narzędzie. Początkującym na pewno się przyda. Taki mały nożyk do dłubania w Googlach ;)
A jakie narzędzia do sprawdzania statystyk (ale na bardzo dużą skalę) poleciłbyś nam?
Taki mały skrypt ,a jak potrafi człowieka cieszyć ;)
Dzięki za skrypt, na pewno się przyda. Mam zamiar napisać sobie jakiś katalog to już nie będę musiał szukać.
Jeśli ktoś potrzebuje monitorować pozycje w Google to polecam sprawdzony serwis, googlemon.pl. Wykresy, tabelki, pozycje zgodne z rzeczywistością, sprawdzanie do 1000 rezultatów, sprawdzanie site itd.
Skrypt ciekawy, trzeba spróbować
niezłe narzędzie, sprawdzę je na moim forum finansowym: mimk.pl
Utworzyłem plik index.php obok pliku z klasą i nie działa. Więc dodałem pozycję require('checkPosition.php'); aby podłączyć klasę (bo w logach były zapisy że nie odnajduje klasy). Podłączył sobie ale dalej nic nie pokazywał. Zmodyfikowałem linijkę $pozycja->search(); na $pozycja->search('http://www.wp.pl ', 'telewizja'); lecz w rezultacie pokazuje wynik "-". Czy komus to zadziałało.
Hej!
Na pozycjonowaniu się znam, ale na PHP nie chocho - masz może gotową wersję do podstawienia danych - bo tam trzeba wpisać samemu no i jak ustawić żeby sprawdzał więcej niż 10 stron ;)
A gdzie można go pobrać, bo link "kliknij tutaj" mi nie działa - wyświetla tę stronę i nic nie pobiera
Przyłączam się do pytania poprzednika. Jak ściągnąć ten skrypt? Jak ktoś ma zapisany to proszę o przesłanie na student96@o2.pl , dzięki
Również proszę o udostępnienie skryptu na adres: wojciech@ci.net.pl
chyba już nieaktualne...
Poprawiłem plik. Zmienił się lekko html i regułka regexpowa.
No i skąd mam go pobrać? Ten link wymieniony w tekście nie działa...
Niestety nie można pobrać skryptu ze wskazanego adresu http://blog.shpyo.net/source/checkPosition.zip ...
Dzięki Marcin za linka.
Brawo, to, że Ci co szukają czegoś innego kręcą nosem to normalny trolling. Wielkie dzięki, sam jestem programistą, szacunek za dzielenie się wiedzą i pracą
Macie może aktualnego linka bo powyższe nie działają.
Działać działają bo pobrałem skrypt, acz skrypt już nie - taka specyfika przy tak dynamicznych zmianach w Google :)
Właśnie tego szukałem! Dziękuję!
Link pobierania nie działa. Szukam takiego narzędzia już długi czas i chyba nie znajdę, a google api jest ograniczony.
niestety już nie działa
Właśnie takiego skryptu szukałem. Prosty i transferu nie zje:)
Nie działa... przeszedłem na webpozycje.
A czy korzystasz z innych narzędzi, jak serprobot czy pewnych polskich? A jeśli tak, co o nich myślisz? :)