74 lines
2.2 KiB
Ruby
74 lines
2.2 KiB
Ruby
ENV["RAILS_ENV"] ||= "development"
|
|
|
|
require ARGV[0] + "/config/environment.rb"
|
|
require "daemons"
|
|
require "pp"
|
|
|
|
ROOT_PATH = ARGV[0]
|
|
LOGS_PATH = ROOT_PATH + "/log"
|
|
BOT_NAME = ARGV[1]
|
|
|
|
@@logger = Logger.new("/var/www/bh/log/Parser.log")
|
|
@@logger.info(ARGV)
|
|
|
|
loop {
|
|
sleep(10)
|
|
}
|
|
#loop {
|
|
|
|
# Получаем список песен для загрузки, помечаем в очереди, что мы их взяли в работу
|
|
# bot_name =
|
|
# ParseQueue.collection.update({status: {$in: [0, 1, 4]}, $atomic: true}, {$set: {bot_name: bot_name}})
|
|
# $queue = $db->getRows($db->q("SELECT * FROM beathaven.queue WHERE status=0 ORDER BY priority DESC, times_failed ASC LIMIT ". QUEUE_PACK));
|
|
# $ids = array();
|
|
# foreach ($queue as $t) {
|
|
# $ids[] = $t['track_id'];
|
|
# }
|
|
# $db->q('UPDATE beathaven.queue SET status=1 WHERE track_id IN('. implode(',', $ids) .')');
|
|
# $db->q('COMMIT');
|
|
|
|
# if (!$queue || count($queue) == 0) {
|
|
# sleep(EMPTY_QUEUE_TIMEOUT);
|
|
# } else {
|
|
# $stats['queue_size'] = count($queue);
|
|
# foreach ($queue as $t) {
|
|
# $t1 = microtime(true);
|
|
# echo "{$t['track_id']} {$t['track_title']} -- ";
|
|
# $ok = $vk->getTracks($t['track_title']);
|
|
|
|
# if (strpos($vk->getHtml(), 'searchOffset') === false) {
|
|
# echo "Session kaput!\n";
|
|
# die;
|
|
# }
|
|
|
|
# if ($ok) {
|
|
# echo "OK\n";
|
|
# $db->q("UPDATE beathaven.queue SET status=3 WHERE track_id=". $t['track_id']);
|
|
# $file_name = Config::get('app:Parser:good_html_dir'). $t['track_id'] .'.html';
|
|
# $stats['good_results']++;
|
|
# } else {
|
|
# echo "FAILED\n";
|
|
# $db->q("UPDATE beathaven.queue SET status = 2, times_failed = times_failed + 1 WHERE track_id=". $t['track_id']);
|
|
# $file_name = Config::get('app:Parser:bad_html_dir'). $t['track_id'] .'.html';
|
|
# $stats['bad_results']++;
|
|
# }
|
|
# file_put_contents($file_name, $vk->getHtml());
|
|
# chmod($file_name, 0777);
|
|
|
|
# $stats['last_request'] = $t['track_title'];
|
|
# $stats['queue_size']--;
|
|
# $stats['eneded_job'] = time();
|
|
|
|
# $bot_stats_file_name = Config::get('app:Parser:bot_stats_dir'). $bot_name .'.json';
|
|
# file_put_contents($bot_stats_file_name, json_encode($stats));
|
|
# chmod($bot_stats_file_name, 0777);
|
|
|
|
# $t2 = microtime(true);
|
|
# if ($t2 - $t1 < VKTIMEOUT) {
|
|
# sleep(ceil(VKTIMEOUT - ($t2 - $t1)));
|
|
# }
|
|
# }
|
|
# }
|
|
#}
|
|
|