Приветствую.
Хотел подкинуть затею по экспорту поисковых кейвордов из разздела SE, реально такое реализовать ?
Принцип работы простой:
заходим в соответввующий раздел
переходим к списку ключей
жмем кнопку - скопировать
SE keywords export
Re: SE keywords export
Приветствую!
экспорт надо как я понимаю не просто так, а что б копировать в другой сайт?
экспорт надо как я понимаю не просто так, а что б копировать в другой сайт?
Don't forget to run script update
Re: SE keywords export
Не, не это он хочет, у меня давно организовано:
И просто имеем таблицу sepage_keys за всю историю, ранается по крону.
smart, разберешься ?
Code: Select all
<?php
function init(){
$create_query = "CREATE TABLE IF NOT EXISTS `sepage_keys` (
`id` int(11) unsigned NOT NULL AUTO_INCREMENT,
`key` varchar(200) NOT NULL,
PRIMARY KEY (`id`),
UNIQUE KEY `keys` (`key`),
UNIQUE KEY `id_2` (`id`),
KEY `id` (`id`),
KEY `key` (`key`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1";
$result = mysql_query($create_query) or die('Query failed: ' . mysql_error());
$result = mysql_query("ALTER TABLE `sepage_keys` ADD `hits_count` INT UNSIGNED NOT NULL DEFAULT '0' AFTER `key`");
}
function clean($key){
$key = urldecode($key);
$key = preg_replace("/[^A-Za-z0-9]/", " ", $key);
$key = preg_replace('!\s+!', ' ', $key);
$key = trim($key);
return strtolower($key);
}
function parse_query($key, $query, $keyword){
//echo "parseq";
$array = explode("&", $query);
foreach($array as $temp){
if(preg_match("/^$key=(.*?)$/", $temp, $text)){ return clean($text[1]); }}
return $keyword;
}
function parse_ref($ref_string, $keyword){
$array_host = parse_url($ref_string);
if(preg_match("/google/", $array_host["host"])){
$keyword = parse_query("q", $array_host["query"], $keyword);
} elseif(preg_match("/yahoo/", $array_host["host"])) {
$keyword = parse_query("p", $array_host["query"], $keyword);
} elseif(preg_match("/bing/", $array_host['host'])) {
$keyword = parse_query("q", $array_host['query'], $keyword);
} elseif(preg_match("/seznam/", $array_host['host'])) {
$keyword = parse_query("oq", $array_host['query'], $keyword);
} elseif(preg_match("/aol/", $array_host['host'])) {
$keyword = parse_query("q", $array_host['query'], $keyword);
} elseif(preg_match("/dogpile/", $array_host['host'])) {
$keyword = parse_query("q", $array_host['query'], $keyword);
} elseif(preg_match("/netscape.fr/", $array_host['host'])) {
$keyword = parse_query("query", $array_host['query'], $keyword);
} elseif(preg_match("/netscape/", $array_host['host'])) {
$keyword = parse_query("s", $array_host['query'], $keyword);
} elseif(preg_match("/bellsouth/", $array_host['host'])) {
$keyword = parse_query("string", $array_host['query'], $keyword);
} elseif(preg_match("/search.earthlink.net/", $array_host['host'])) {
$keyword = parse_query("q", $array_host['query'], $keyword);
} elseif(preg_match("/aolsearch/", $array_host['host'])) {
$keyword = parse_query("query", $array_host['query'], $keyword);
} elseif(preg_match("/earthlink/", $array_host['host'])) {
$keyword = parse_query("q", $array_host['query'], $keyword);
} elseif(preg_match("/peoplepc/", $array_host['host'])) {
$keyword = parse_query("q", $array_host['query'], $keyword);
} elseif(preg_match("/orange/", $array_host['host'])) {
$keyword = parse_query("q", $array_host['query'], $keyword);
} else {
$keyword = $keyword;
}
return $keyword;
}
//include('config.php');
// Connecting, selecting database
$link = mysql_connect("localhost", "sepagegen", "123456") or die('Could not connect: ' . mysql_error());
// echo 'Connected successfully';
$handle = fopen("dbs.txt", "r");
if ($handle) {
//$lines = file($filename, FILE_IGNORE_NEW_LINES);
while (($line = fgets($handle)) !== false) {
// process the line read.
$line = str_replace(array("\r", "\n"), '', $line);
echo ($line);
mysql_select_db($line) or die('Could not select database');
init();
// Performing SQL query
$query = "SELECT * FROM refs where trader='SE'";
$result = mysql_query($query) or die('Query failed: ' . mysql_error());
$re = "/(4teen|6teen|7teen|adolescent|animal|child|child porn|child pornography|child sex|childporn|children|childsex|forteen|horse|illegal lolitas|juvenile|kid porn|kiddie|kiddie porn|kiddie sex|kiddieporn|kiddiesex|kiddy|kinderporn|kindersex|koprofagie|kotoran|lola|lolita|lolitas|lolitaz|minor|minors|paedophilia|paidophilia|pdophile|pdophilie|pederastia|pediphile|pedo|pedofilia|pedoland|pedophelia|pedophile|pedophilia|pedophylia|pre teen|pre teenage|pre teenager|pre teenagers|pre teens|pre-adolescent|pre-teen|preeteen|prelolitas|preteen|rape|rapi|schoolgirl|sixteen|teen 13|teen 14|teen 15|teen 16|teen 17|teen13-17|under age|underage|underaged|zoo|10|11|12|13|14|15|16|17)/";
while ($row = mysql_fetch_array($result, MYSQL_ASSOC)) {
$keyword = parse_ref($row['referer'],"NOT_KEY");
if (preg_match($re, $keyword) > 0) {
continue;
}
if ($keyword!="NOT_KEY") {
if(strlen($keyword)>3 && strpos($keyword,"http") === false)
{
$query = "SELECT * FROM sepage_keys where `key`='".$keyword."'";
$keysresult = mysql_query($query) or die ("Error in query: $query " . mysql_error());
$num_results = mysql_num_rows($keysresult);
if ($num_results == 0){
$insertq = "INSERT INTO `sepage_keys`(`id`, `key`) VALUES(0,'".$keyword."')";
mysql_query($insertq) or die('Query failed: ' . mysql_error());
} else {
$updateq = "UPDATE `sepage_keys` SET `hits_count` = `hits_count` +1 where `key`='".$keyword."'";
mysql_query($updateq) or die('Query failed: ' . mysql_error());
}
//echo $keyword;
//echo "<br>";
}
}
}
}
fclose($handle);
}
/* $query = "SELECT * FROM sepage_keys";
$keysresult = mysql_query($query) or die ("Error in query: $query " . mysql_error());
$num_results = mysql_num_rows($keysresult);
if (php_sapi_name() != 'cli'){
echo "Currently in DB: ".$num_results."<br/>";
}
$allkeys = "";
while($row = mysql_fetch_array($keysresult)){
if (!empty($allkeys)){
$allkeys = $allkeys."|";
}
$allkeys = $allkeys.$row["key"];
//Edited - added semicolon at the End of line.1st and 4th(prev) line
}
if (php_sapi_name() != 'cli'){
echo "Values: {".$allkeys."}<br/>";
}
*/
mysql_close($link);
?>
smart, разберешься ?
Last edited by Semen_ssr on Wed Aug 18, 2021 9:33 am, edited 1 time in total.
Re: SE keywords export
я бы для начала убрал перс данные из месаги)
и честно говоря котроткое описание что все же происходит было бы не лишним)
и честно говоря котроткое описание что все же происходит было бы не лишним)
Don't forget to run script update
Re: SE keywords export
нет, просто экспорт ключей, для сбора базы запросов, чтобы можно было копировать список нажатием одной кнопкиadmin wrote: Tue Aug 17, 2021 11:27 am Приветствую!
экспорт надо как я понимаю не просто так, а что б копировать в другой сайт?
Re: SE keywords export
не ясно какие в целом требования к фиче, добавил просто как export all
Don't forget to run script update
Re: SE keywords export
апнулся, а где искать кнопку эту ?admin wrote: Wed Aug 18, 2021 5:05 am не ясно какие в целом требования к фиче, добавил просто как export all
Re: SE keywords export
в search log
если опять же я верно понял о каких SE keywords идет речь
если опять же я верно понял о каких SE keywords идет речь
Don't forget to run script update
Re: SE keywords export
не совсем такadmin wrote: Wed Aug 18, 2021 7:09 am в search log
если опять же я верно понял о каких SE keywords идет речь
я в первом посте указал - раздел SE
поисковые запросы которые приходят с поисковых систем
Re: SE keywords export
а где конкретно раздел SE?
Это какой пункт меню?
Это какой пункт меню?
Don't forget to run script update







