Example #1
0
function getAllLessonStudentWeb()
{
    //不同学期相同课程编号没考虑
    require_once ROOT_PATH . "\\Spider\\class\\db\\database.php";
    //获取文件名
    $my_dir = "resource/class_20132/";
    $handler = opendir($my_dir);
    $m = 0;
    $db = new cDatabase(DEFAULT_DATABASE_INFO_CONSTANTS::$db_info);
    while (($filename = readdir($handler)) !== false) {
        if ($filename == "." || $filename == "..") {
            continue;
        }
        $m++;
        $i = 0;
        if ($i == 0) {
            //获取课程编号
            //$lesson_no = "0100970001";
            $lesson_list = explode(".txt", $filename);
            $lesson_no = $lesson_list[0];
            //获取文件源码
            $file = $my_dir . $lesson_no . ".txt";
            //从数据库中找出限选人数,计算出页数
            $sql = "select limit_person from lesson where lesson_no='%s'";
            $sql = sprintf($sql, $lesson_no);
            //echo $sql."<br>";
            $result = $db->query($sql);
            $row = mysql_fetch_array($result);
            if ($row['limit_person']) {
                $limit = $row['limit_person'];
            }
            //echo $limit."<br>";
            if ($limit) {
                $total_page = floor($limit / 27) + 1;
            } else {
                $total_page = 0;
            }
        }
        $current_page = 1;
        for ($current_page = 1; $current_page <= $total_page; $current_page++) {
            $post_data = array("__VIEWSTATE" => "", "__EVENTVALIDATION" => "", 'crvDjb$ctl02$ctl06.x' => "14", 'crvDjb$ctl02$ctl06.y' => "11");
            //前面两个字段决定了跳转的页面,后面两个字段可随便,但是不可无
            $post = $post_data;
            if ($current_page == 1) {
                $result = file_get_contents($file);
            } else {
                $result = get_lesson_student_web($post);
            }
            $dir = "resource/all_info_20132";
            if (!is_dir($dir)) {
                mkdir($dir);
            }
            $lesson_file = $dir . "/" . $lesson_no . "_" . $current_page . ".txt";
            $fp = fopen($lesson_file, "a");
            fwrite($fp, $result);
            fclose($fp);
        }
        if ($m > 5) {
            break;
        }
    }
    closedir($handler);
}
Example #2
0
function connectdb($dbname, $dbuser, $dbkey, $db_host = FALSE)
{
    global $db_use_pconnect;
    $db = new cDatabase();
    if ($db_host) {
        $db->db_host = $db_host;
    } else {
        $db->db_host = DB_HOST;
    }
    $db->db_username = $dbuser;
    $db->db_password = $dbkey;
    $db->default_db = $dbname;
    $db->db_type = DB_TYPE;
    $db->debug = FALSE;
    $db->connect($db->default_db);
    return $db;
}