<?php
set_time_limit(1800);
$mtime = microtime();
$mtime = explode(' ', $mtime);
$mtime = $mtime[1]+$mtime[0];
require 'parser.php';
require '../kernel/system.php';
define(ROOT, 'http://vkontakte.ru/');
define(REG, ROOT . 'reg0');
define(SCHOOLS, ROOT . 'help.php?act=agetselect&list_id=school1&val=');
define(UNIVERS, ROOT . 'help.php?act=agetselect&list_id=university&val=');
define(FACULTY, ROOT . 'help.php?act=agetselect&list_id=faculty&val=');
$html = file_get_html( REG );
$options = $html->find('#uni_city option');
$cities = array();
$schools = array();
$univers = array();
$faculty = array();
// Init
foreach($options as &$opt)
if( intval($opt->value) > 0 )
$cities[] = array(
'city_ID' => $opt->value,
'cityName' => $opt->innertext
);
// GRAB
function grabData($url, $id, $iid, $pid, $name){
$html = file_get_html( $url . $id );
$options = $html->find('option');
$ret = array();
foreach($options as &$opt){
if( intval($opt->value) > 0 )
$ret[] = array(
$iid => $opt->value,
$pid => $id,
$name => iconv('UTF-8', 'cp1251', $opt->innertext)
);
}
return $ret;
}
foreach($cities as &$city){
$schools = array_merge(&$schools, grabData(SCHOOLS, $city['city_ID'], 'school_college_ID', 'city_ID', 'school_collegeName'));
$univers = array_merge(&$univers, grabData(UNIVERS, $city['city_ID'], 'institute_ID', 'city_ID', 'instituteName'));
}
foreach($univers as &$univer)
$faculty = array_merge(&$faculty, grabData(FACULTY, $univer['institute_ID'], 'faculty_ID', 'institute_ID', 'facultyName'));
function export(&$data, $table){
echo '<h1>' . $table . '</h1>';
foreach($data as &$d){
$fields = "";
$values = "";
$query = "Insert INTO " . $table;
foreach($d as $f => &$v){
$fields .= $f.',';
$values .= "'".$v."',";
}
$fields = preg_replace("/,$/","", $fields);
$values = preg_replace("/,$/","", $values);
$query .= "(".$fields.") values (".$values.");";
//echo '<p>' . $query . '</p>';
//file_put_contents('./out.sql', file_get_contents('./out.sql') . $query . "\n\n");
mysql_query($query);
}
}
export($cities, 'city');
export($faculty, 'faculty');
export($univers, 'university');
export($schools, 'schools_colleges');
$mtime2 = microtime();
$mtime2 = explode(' ', $mtime2);
$mtime2 = $mtime2[1]+$mtime2[0];
echo $mtime2 - $mtime . ' MS';
?>