Анализ на ключови думи, чрез tyxo.bg

понеделник, април 12th, 2010

Проучване на ключовите фрази с помоща на брояча tyxoПърво благодаря на Мариан Игнев за помоща в http://fridaycode.net, за скрапването на referring url-тата от tyxo-то.

Знаете, че tyxo-то показва последните 100 ключови фрази по които е получил посещения даден сайт и това може да се види ако е отворена статистиката му. От тази статия ще разберете как да ги събирате в база данни и да се доберете до много повече от последните 100 !

С помоща на скрипта от тази статия : Как лесно да вземаме съдържание от сайтове тези последни 100 ключови фрази могат да се вземат много лесно в статията е обяснено как, като има и два файла конкретно за tyxo (tyxo_parser.php и tyxo.php), които малко трябва да се променят, за да взема referring url-то, а не отделната ключова фраза, която в tyxo са я ограничили до 32 символа и понякога се накъсва.

Модифицирания скрипт можете да изтеглите от тук : Sportni_parser.zip (14,6 KB)

Примерени резултати след събирането на данните за sportni.bg можете да видите тук : Ключови думи/фрази Sportni.bg

От тук надолу статията обеснява какви промени трябва да се направят в скриптa от fridaycode.net. Целта е да се види, кое за какво служи.

За да вземете referring url пръво трябва да сте си издърпали пакета от горната статия и след това да редакатирате файла tyxo_parser.php, като към последните редове има :


$keywords_arr[$key]['text']

Където  вместо ‘text’ трябва да се замени с ‘href’ или да изглежда така :


$keywords_arr[$key]['href']

След това в другия файл (tyxo.php) добавяте една функция, която да връща само търсената дума/фраза от referring url-то на google :


function keyword ($string) {
	if (strpos($string, 'google')) {
	// Премахване на всичко преди &q=
    $tmp = substr($string, strpos($string, 'q='));
    // Премахване на q=
	$tmp = substr($tmp, 2);
	// Премахване на всички след следващия §
	if (strpos($tmp, '&')) {
		$tmp = substr($tmp, 0,strpos($tmp, '&'));
	}
	// Вуаля :)
	return urldecode($tmp);
	}
}

И след това, отново в tyxo.php, за да включите горната функция правите следното, намирате към края :

$html .= ' | ' . cp1251_to_utf8( $row['keyword'] );

Зааменяте го с :

$html .= ' | ' . keyword(cp1251_to_utf8( $row['keyword'] ));

Вече имате пълната ключова дума/фраза, по която е намерен дадения сайт. С допълнителната информация, с която разполагате за ip адрес и дата/час на посещението, можете да си направите таблица, която да съдържа цялата тази информация.

Ето груб вариант как би могла да изглежда таблицата в базата данни :


CREATE TABLE IF NOT EXISTS `skolev` (
  `ip` varchar(20) NOT NULL,
  `keyword` varchar(255) character set utf8 NOT NULL,
  `date` varchar(50) character set utf8 NOT NULL,
) ENGINE=MyISAM DEFAULT CHARSET=utf8;

Ето и как би могла да изглежда заявката за записване на ключовите фрази в горната таблица :


	$sql = "INSERT INTO `scraping`.`skolev` (`ip`, `keyword`, `date`) VALUES ('".addslashes($row['ip'])."',
'".addslashes(keyword(cp1251_to_utf8( $row['keyword'] )))."', '".addslashes(cp1251_to_utf8( $row['date'] ))."' );";

	mysql_query($sql);

Хубаво е като приключим с добавянето на новите записи, да проверим дали информацията не се дублира и ако е така да я изтрием. Ето варианта, който аз съм използвал, за да избегна дублирането :

$select = "SELECT * FROM `skolev` ORDER BY `skolev`.`ip` ASC , `skolev`.`keyword` ASC";
  $res_select = mysql_query($select);
  $num_res_select = mysql_num_rows($res_select);

  for ($i=0; $i <$num_res_select; $i++)
  {
  $s=$i+1;
  $row = mysql_fetch_array($res_select);

  $ip[$i] = stripslashes($row['ip']);
  $keyword[$i] = stripslashes($row['keyword']);
  $date[$i] = stripslashes($row['date']);

  $ip[$s] = stripslashes($row['ip']);
  $keyword[$s] = stripslashes($row['keyword']);
  $date[$s] = stripslashes($row['date']);
  }

  for ($l=0;$l<$num_res_select;$l++) {
  $s = $l + 1;
  if ($ip[$l] == $ip[$s] && $keyword[$l] == $keyword[$s] && $date[$l] == $date[$s])  {
  $delete = "DELETE FROM `scraping`.`skolev` WHERE `skolev`.`ip` == '".$ip[$s]."' AND `skolev`.`keyword` = '".$keyword[$s]."' AND `skolev`.`date` = '".$date[$s]."'  LIMIT 1;";
 mysql_query($delete);
 }
}

За всичко това може да се пусне една cron задача, да се изпълнява на определен период в зависимост колко посещаван е сайта.

За хората постарали се да прегледат цялата статия добавям и една фунцкия на коя позиция е бил сайта преди да се цъкне за съответната фраза т.е. ако сте търсили примерно трохички в google и сте цъканли на втория резултат, тази информация присъства в referring url-то в част от случаите (по първоначални наблюдения за някои сайтове достига до 40 % от случаите). Фунцкия се използва по същия начин както и горната функцията за ключова дума :

function position($string) {
	$string = strtolower($string);
	if (strpos($string, 'google')) {
	// Delete all before &cd=
    $tmp = substr($string, strpos($string, 'cd='));
    // Remove cd=
	$tmp = substr($tmp, 3);
	// Remove everything after the next &
	if (strpos($tmp, '&')) {
		$tmp = substr($tmp, 0,strpos($tmp, '&'));
	}
	// we have the results.
		if (strlen($tmp) < 4)
			return urldecode($tmp);
	}
}

Проблема тук е, че ако има резултати от картинки/видео или е щракнато на платен резулат в броенето на позицията се включват и те.

След като вече имате всички ключови фрази/думи на конкурентния сайт в собствена база данни сами решавате какво точно да правите с тях и как да ги организирате.

С помоща на същия метод можете да извлечете и от кои сайтове конкурента ви получава най-много посещения, да следите лидерите в дадена ниша, а с малко желание и да разберете как върви adwords кампанията на някой конкурент, но това може да го опиша в някоя друга статия понеже тази стана достатъчно дълга …

7 Коментара :> Категория: SEO Етикети: , , , ,

7 Коментара за “Анализ на ключови думи, чрез tyxo.bg”

  1. Пенко Пенев на април 13th, 2010 6:58

    Браво
    Полезна статия. Не съм пробвал скрипта, но възнамерявам да го направя.

  2. Павел на април 13th, 2010 10:43

    Ох, много полезно, но още ли има хора, които използват Tyxo ?

  3. Борис на април 13th, 2010 11:55

    А ти кой тул използваш за събиране на ключови думи (на български по-специално) ?

  4. Вал на април 13th, 2010 12:13

    Поздравления за статията ! :)

  5. Стан Колев на април 13th, 2010 12:35

    Пенко мерси за коментара, нищо няма да ти коства да го пробваш, ще се увериш, че е полезен.

    Павел – ползват ползват и още как. Мен ми трябваше конкретно за една ниша и се оказа, че водещите 5 сайта в нея имат отворени статистики и вече се чудя как да разбия таблиците, че някой станаха с по 60 000 записа :)

    Борис – тази статия е за ключови думи на български, adwors и той дава доста полезна информация, ръчното събиране и анализиране на сайтове върши част от работата, всякакви отворени статистики са добре дошли и в общи линии това са вариантите …

    Вал мерси :)

  6. Тихомир Ипотпалиев на юли 6th, 2010 17:01

    Аз ползвам нещо подобно като идея за „крадене“ на тагове, но идеята ми скри шапката. Евала.!

  7. bogo на юли 12th, 2010 22:44

    Чудесно, благодаря за статията, …наистина интересно

Какво е твоето мнение ?




Още от SEO (0 от 0 публикация)