Skocz do zawartości

Sprawdzanie pozycji w wyszukiwarkach


qwatex

Rekomendowane odpowiedzi

Jak w temacie:

function sprawdz ($filtr, $adresw, $referer, $klucz, $strona)
{
$rC = curl_init();
curl_setopt($rC, CURLOPT_HEADER, 0);
curl_setopt($rC, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($rC, CURLOPT_VERBOSE, 1);
curl_setopt($rC, CURLOPT_REFERER, $referer);
curl_setopt($rC, CURLOPT_URL, sprintf($adresw, urlencode($klucz)));	
$sData = curl_exec($rC);
curl_close($rC);

preg_match_all($filtr, $sData, $aResults);
$aResults = array_pop($aResults);

$iPosition = '-';

foreach($aResults as $iKey => $sRow) {
	if(strpos(strip_tags($sRow), 'https://' . $strona) !== false) {
		$iPosition = $iKey + 1;
	}
}
return $iPosition;
}
function sprawdzg ($klucz, $strona)
{
$gfiltr = '/<h2 class=r><a href="([^"]+)" class=l>/';
$gadsresw = 'https://www.google.pl/search?hl=pl&q=%s&num=100';
$greferer = 'https://google.pl/';
$google = sprawdz($gfiltr, $gadsresw, $greferer, $klucz, $strona);
return $google;
}
function sprawdzo ($klucz, $strona)
{
$ofiltr = '/<span class=link><a href="([^"]+)" class=link>/';
$oadresw = 'https://szukaj.onet.pl/query.html?new_nh=100&qt=%s';
$oreferer = 'https://onet.pl/';
$onet = sprawdz($ofiltr, $oadresw, $oreferer, $klucz, $strona);
return $onet;	
}
function sprawdzw ($klucz, $strona)
{
$wfiltr = '/<big><a href="([^"]+)"  >/';
$wadresw = 'https://szukaj.wp.pl/szukaj.html?zw=T&szukaj_and=%s&gl_ile=50';
$wreferer = 'https://wp.pl/';
$wp = sprawdz($wfiltr, $wadresw, $wreferer, $klucz, $strona);
return $wp;	
}

Słowo kluczowe podajemy do zmiennej klucz, a adres strony do zmiennej strona w funkcjach sprawdzg, sprawdzo i sprawdzw.

Funkcja zwraca pozycje strony.

Odnośnik do komentarza
Udostępnij na innych stronach

Dzisiaj to tylko marudze i marudzę ale widze drobny błąd

foreach($aResults as $iKey => $sRow) {
	if(strpos(strip_tags($sRow), 'https://' . $strona) !== false) {
		$iPosition = $iKey + 1;
	}
}
return $iPosition;

a powinno być

foreach($aResults as $iKey => $sRow) {
	if(strpos(strip_tags($sRow), 'https://' . $strona) !== false) {
		$iPosition = $iKey + 1;
	   return $iPosition;
	}
}
return $iPosition;

Bo jak mam w wynikach stronę 2 razy to zwraca gorszą pozycję :P

Osobiście to wolał bym wynik z wyników stronicowanych po 10 :) bo to jest bardziej naturalne :)

I jak już jest koncert życzeń to jeszcze bym chciał POzostałe elementy z wyników :) Tytuł, opis.

Odnośnik do komentarza
Udostępnij na innych stronach

Żeby brać 10 wyników wystarczy zmienić na:

...
$gadsresw = 'https://www.google.pl/search?hl=pl&q=%s&num=0';
...
$oadresw = 'https://szukaj.onet.pl/query.html?new_nh=10&qt=%s&st=1';
...
$wadresw = 'https://szukaj.wp.pl/szukaj.html?zw=T&szukaj_and=%s&gl_ile=0';
...

W przypadku google aby sprawdzić kolejną stronę należy powiększać num=0 o 10, a w wypadku wp gl_ile=0 także o 10.

W onecie wystarczy powiększać st=1 o 1.

Wykonałem by sprawdzało jak najwięcej wyników za jednym razem ponieważ wydaje mi się że pozycja jest taka sama w obu wypadkach.

I jak już jest koncert życzeń to jeszcze bym chciał POzostałe elementy z wyników smile.gif Tytuł, opis.

Chodzi o to by był pobierany opis i tytuł strony której sprawdzamy pozycje?

Odnośnik do komentarza
Udostępnij na innych stronach

Powiem tak:

Wpisz w google.COM "kasia" i znajdz kasiaturajczyk.com

W większości przypadków tak jest że wyniki stronicowane po 10 i 100 są identyczne :)

róznice najlepiej widać wtedy gdy w wynikach pojawia sie domena po 2 razy (lub więcej) i są wcięcia.

To wtedy najłatwiej zauważyć :

Jeżeli chodzi o tytuł z wyników

np. Kasia Turajczyk - california dream-artist -fine art-paintings

preg_match_all('/".*?class=l>(.*?)<\/h2>/si'

i opis z wyników:

Kasia Turajczyk - art -paintings, buy paintings, order portraits, portraits in order, pastel, oil paintings, water colour, sell, painting, fine art.

preg_match_all('/<tr><td.*?class="j"><font size=-1>(.*?)<br><span.*?class=a>/si'

A jakie ceny :) Na tej stronie Kasi :P

Odnośnik do komentarza
Udostępnij na innych stronach

Zarchiwizowany

Ten temat przebywa obecnie w archiwum. Dodawanie nowych odpowiedzi zostało zablokowane.

  • Ostatnio przeglądający   0 użytkowników

    • Brak zarejestrowanych użytkowników przeglądających tę stronę.
×
×
  • Dodaj nową pozycję...

Powiadomienie o plikach cookie

Umieściliśmy na Twoim urządzeniu pliki cookie, aby pomóc Ci usprawnić przeglądanie strony. Możesz dostosować ustawienia plików cookie, w przeciwnym wypadku zakładamy, że wyrażasz na to zgodę. Warunki użytkowania Polityka prywatności