Определение позиции сайта в выдаче

Статус
В этой теме нельзя размещать новые ответы.

Digwnews

Читатель
Заблокирован
Регистрация
1 Мар 2010
Сообщения
127
Реакции
23
  • Автор темы
  • Заблокирован
  • #1
Есть ли у кого-нибудь функция или скрипт, из которого можно выдрать парсинг позиции сайта по заданному ключу в ПС яндекс, гугл, рамблер?
 
все это есть в том же аллсабмитере, если устроит локальное решение вашей проблемы.
Забиваете хоть сколько ключей и он будет парсить выдачу и показывать вашу позицию не только по указанным вами пс, но есть еще и другие.
Также все задания можно запланировать и получать результаты к примеру раз в неделю.
 
  • Автор темы
  • Заблокирован
  • #3
Мне нужен PHP.
 
определение позиций по google(ru, ua, com)

могу доделать под отдельные ПС. пиши в личку.
 

Недавно всё перерыл, но из бесплатных ничего что мне понравилось не нашел
 

но он платный ведь
я вот уже неделю к нему присматриваюсь - впринципе отличный скрипт

Вот еще из платных СЕРВИСОВ есть
 
  • Автор темы
  • Заблокирован
  • #8
Большое спасибо за ссылки.
Но проблема с парсингом гугла.
Для всех поисковиков вытащил функции - всё отлично, а вот парсинг гугла работает верно только в
Но не могу никак вытащить функцию для определения позиции в гугле. Нужна обычная функция для google.ru - передаём урл и ключ - получаем позицию.
Вот эти места в скрипте:
PHP:
function position_update($position_update, $id_key = 0){
		if($id_key == 0){
			$id_key = $position_update;
		}
		$qexist = mysql_query('select * from `position` where `id`="'.intval($id_key).'"');
		if(mysql_num_rows($qexist) <= 0){
			echo "<h1 style='color:red'>Ключевика нет в базе.</h1><meta http-equiv='refresh' content='3; url=index.php?'>";
		}else{
			//вытаскиваем, 
			$keyword = mysql_fetch_array($qexist);
			$site = mysql_fetch_array(mysql_query('select * from `sites` where `id`="'.$keyword['id_site'].'"'));
			$new_g = 0;
			//проверяем, 
			$serp = $this->seoclass->google_serp($site['region'],$keyword['keyword']);
			if(empty($serp)){
			 die('Google  плохой, Google забанил :\'(');
			}
			foreach($serp as $k => $v ){
				$url = parse_url(str_replace('/interstitial?url=','',$serp[$k]['url']));
				//попал!
				if($url['host'] == $site['url'] || $url['host'] == 'www.'.$site['url']){
					$new_g = $k+1;
				}
			}
			if($new_g != $keyword['new_g']){
				//обновляем
				mysql_query('update `position` set `new_g`="'.$new_g.'" where `id`="'.intval($id_key).'"') or die(mysql_error());
				mysql_query('update `position` set `old_g`="'.$keyword['new_g'].'"  where `id`="'.intval($id_key).'"') or die(mysql_error());
				mysql_query('update `position` set `cdate`="'.time().'"  where `id`="'.intval($id_key).'"') or die(mysql_error());
			}
		}
	}
Также, используент от сеокласса эта:
PHP:
public function google_serp($region,$text,$start=0,$num=100)
	{
		$num = $num<=100 ? $num : 100;
		/*$text=str_replace('И','И',$text);
		$text=str_replace('ш','ш',$text);
		*/
		$content = $this->_curl_session('http://www.google.'.$region.'/search?q='.urlencode($text).'&ie=utf-8&num='.$num.'&start='.$start);
		preg_match_all('(<h3 class=\"r\"><a href=\"(.*)\".*>(.*)</a></h3>)siU',$content,$url_n_title);
		preg_match_all('(<div class=\"s\">(.*)<br><span class=f><cite>)siU',$content,$snippet);
		foreach ($url_n_title[1] as $key=>$val)
		{
			$out[]=array (
						'title'=>@strip_tags($url_n_title[2][$key]),
						'snippet'=>@strip_tags($snippet[1][$key]),
						'url'=>@strip_tags($val)
						);
		}
		return $out;
	}
Не могу никак преобразовать в то, что мне нужно.
Помогите, пожалуйста.
 
бесплатная, все пироги
*** скрытое содержание ***
А самое главное на php :mad:
Если уж тему было впадлу прочитать, так хотя бы на раздел посмотрел.

Digwnews, если не сложно выложи функции, которые вытащил.
 
Статус
В этой теме нельзя размещать новые ответы.
Назад
Сверху