Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- <?php
- // парсер ключевых слов
- // © [email protected] 19.05.2017
- $error=1;
- if($error==1){error_reporting(E_ALL);ini_set('display_errors', 'on');}
- else {error_reporting(0);ini_set('display_errors', 'off');}
- $tema=isset($_GET['tema'])?strip_tags($_GET['tema']):"test";
- $tm=isset($_GET['tema'])?"&tema=$tema":"";
- $tmg=isset($_GET['tema'])?"?tema=$tema":"";
- if(!file_exists($tema)){mkdir($tema, 0700);echo "<meta http-equiv=\"refresh\" content=\"1; url=$tmg\">";}
- $_db="$tema/$tema.db";
- $files=array("key","bad");
- foreach($files as $line)
- {
- $fil[$line]=$tema.'/'.$line.'_'.$tema.'.txt';
- if (!file_exists($fil[$line]))
- {
- $fp = fopen($fil[$line], "w");
- fwrite($fp, "");
- fclose($fp);
- }
- $arfil[$line]=file($fil[$line]);
- }
- $p=isset($_GET['p'])?$_GET['p']:0;
- $st=isset($_GET['stop'])?"&stop=":"";
- $p20=$p*20;
- $p2020=$p20+20;
- if (isset($_GET['feed']))
- {
- if (!file_exists($_db))
- {
- $db = new SQLite3($_db);
- $db->busyTimeout(5000);
- $db->exec('PRAGMA journal_mode=WAL;');
- $db->exec('CREATE TABLE IF NOT EXISTS pages (id INTEGER PRIMARY KEY, key TEXT UNIQUE);');
- $db->close();
- }
- else
- {
- $db = new SQLite3($_db);
- $db->busyTimeout(5000);
- $db->exec('PRAGMA journal_mode=WAL;');
- if(isset($_POST['key']))
- {
- $ar=explode("\n",strip_tags($_POST['key']));
- $db->exec('BEGIN IMMEDIATE;');
- foreach($ar as $key)
- {
- if(empty($key)) continue;
- $lin = $db->escapeString(trim($key));
- @$db->exec("INSERT INTO pages (key) VALUES ('".$lin."');");
- }
- $db->exec('COMMIT;');
- }
- $lh = $db->query("SELECT * FROM pages ORDER BY id ASC LIMIT $p20,20;");
- $count = $db->querySingle('SELECT count(*) FROM pages;');
- while ($echo = $lh->fetchArray())
- {
- $arkey[]=$echo['key'];
- }
- if ($_GET['feed'] == 'gen')
- {
- foreach($arkey as $key)
- {
- $key = mb_strtolower($key, 'utf-8');
- $keyu=preg_replace("/ /",'+',$key);
- $keyu=urlencode($keyu);
- ////////////////////// ---------- //////////////////////
- $url="http://sgs.sputnik.ru/?format=xml&type=web&query=$keyu";
- $xml = simplexml_load_file($url);
- $offer=$xml->item;
- foreach($offer as $line){$attr=$line->attributes();$keys[]=$attr['header'];}
- $url="http://suggests.go.mail.ru/ie8?q=$keyu";
- $xml = simplexml_load_file($url);
- $offer=$xml->Section->Item;
- foreach($offer as $line)$keys[]=$line->Text;
- $url="http://autocomplete.nigma.ru/complete/query_help.php?suggest=true&q=$keyu";
- $fff=file_get_contents($url);
- $response = json_decode($fff, true);
- foreach($response[1] as $lin)$keys[]=$lin;
- $url="https://suggest.yandex.ru/suggest-ff.cgi?part=$keyu&uil=ru&sn=50";
- $fff=file_get_contents($url);
- $response = json_decode($fff, true);
- foreach($response[1] as $lin)$keys[]=$lin;
- $url="https://search.yahoo.com/sugg/gossip/gossip-us-fp/?nresults=20&command=$keyu";
- $fff=file_get_contents($url);
- $fff=preg_replace("/fxsearch\((.*)\,\[\]\,\[\](\])\)/",'\1\2',$fff);
- $response = json_decode($fff, true);
- foreach($response[1] as $lin)$keys[]=$lin;
- /*
- $url="https://clients1.google.com/s?client=opera&q=$keyu";
- $fff=file_get_contents($url);
- $response = json_decode($fff, true);
- foreach($response[1] as $lin)$keys[]=$lin;
- */
- $url="http://ss.ask.com/query?li=ff&sstype=prefix&num=20&q=$keyu";
- $fff=file_get_contents($url);
- $response = json_decode($fff, true);
- foreach($response[1] as $lin)$keys[]=$lin;
- ////////////////////// ---------- //////////////////////
- $keys=array_unique($keys);
- $db->exec('BEGIN IMMEDIATE;');
- foreach($keys as $k=>$line)
- {
- $rr="";
- foreach ($arfil['bad'] as $black)
- {
- $black = trim($black);
- preg_match("/$black/",$line,$re);
- if(!empty($re)) $rr.=$re[0];
- }
- if(!empty($rr)) continue;
- $lin = $db->escapeString(trim($line));
- @$db->exec("INSERT INTO pages (key) VALUES ('$lin');");
- }
- $db->exec('COMMIT;');
- }
- $p++;
- if($count<$p20) {echo "Все"; exit;}
- echo "feed=gen&p=$p$tm$st<br>с $p20 по $p2020<br>";
- if(!empty($st))
- {
- echo "
- <form action=\"index.php\" target=\"generator\" method=\"get\">
- <input type=\"hidden\" name=\"feed\" value=\"gen\"/>
- <input type=\"hidden\" name=\"tema\" value=\"$tema\"/>
- <input type=\"text\" name=\"p\" value=\"$p\" size=\"2\" />
- <input type=\"submit\">
- </form>";
- }
- else
- {
- echo "
- <A HREF=\"?feed=gen&p=$p$tm&stop=\" target=\"generator\">стоп</A>
- <meta http-equiv=\"refresh\" content=\"1; url=?feed=gen&p=$p$tm$st\">";
- }
- }
- if ($_GET['feed'] == 'html')
- {
- $list = $db->query('SELECT id, key FROM pages ORDER BY id DESC LIMIT 3000;');
- echo "<A HREF=\"?feed=html$tm\">обновить</A><br>";
- while ($echo = $list->fetchArray())
- {
- echo $echo['id'].' '.$echo['key'].'<br>';
- }
- }
- if ($_GET['feed'] == 'txt')
- {
- $list = $db->query('SELECT key FROM pages;');
- echo "Сохранено: $count ключей $tema";
- $file = fopen ("$tema/$tema.txt","w+");
- while ($echo = $list->fetchArray())
- {
- fputs($file,$echo['key']."\n");
- }
- fclose ($file);
- }
- foreach($files as $k=>$fk)
- {
- $line=$fil[$fk];
- if ($_GET['feed'] == $fk)
- {
- if(isset($_POST[$fk]))
- {
- file_put_contents($line, strip_tags($_POST[$fk]));
- echo "<meta http-equiv=\"refresh\" content=\"1; url=?feed=$fk$tm\">";
- }
- $bf[$k]=@file_get_contents($line);
- echo "$line<br/>
- <form action=\"index.php?feed=$fk$tm\" method=\"post\">
- <textarea rows=\"42\" cols=\"24\" name=\"$fk\">$bf[$k]</textarea><br/>
- <input type=\"submit\">
- </form>
- ";
- }
- }
- $db->close();
- }
- }
- else
- {
- header('Content-Type: text/html; charset=UTF-8');
- echo "
- <table>
- <tr>
- <td colspan=2>
- <A HREF=\"/\">главная</A> |
- <A HREF=\"?feed=gen$tm&p=$p\" target=\"generator\">пуск</A> |
- <A HREF=\"?feed=txt$tm\" target=\"keytxt\">сохранить</A> |
- <A HREF=\"$tema/$tema.txt\" target=\"keytxt\">скачать</A></td>
- <td colspan=2>
- <form action=\"/\" method=\"get\">
- <input type=\"text\" name=\"tema\" value=\"$tema\" maxlength=\"10\" />
- <input type=\"submit\">
- </form></td>
- </tr>
- <tr>
- <td><iframe src=\"?feed=key$tm\" width=\"220\" height=\"700\" frameborder=\"0\" scrolling=\"yes\"></iframe></td>
- <td><iframe src=\"?feed=bad$tm\" width=\"220\" height=\"700\" frameborder=\"0\" scrolling=\"yes\"></iframe></td>
- <td><iframe src=\"?feed=html$tm\" width=\"500\" height=\"700\" frameborder=\"0\" scrolling=\"yes\"></iframe></td>
- <td><iframe name=\"generator\" width=\"500\" height=\"400\" frameborder=\"0\" scrolling=\"yes\"></iframe><br>
- <iframe name=\"keytxt\" width=\"500\" height=\"300\" frameborder=\"0\" scrolling=\"yes\"></iframe></td>
- </tr>
- </table>";
- }
- ?>
Add Comment
Please, Sign In to add comment