Задача такая. Залогинится на сайт, перейти на нужную вкладку, выбрать нужную табличку и взять из нее данные. Залогинился. Перешел. Выбрал, отрезал остальное ненужное и вывел ее на экран Теперь внимание вопрос, структура таблички довольна удачная на первый взгляд у каждой ячейки разный стиль, но почему то не получается выбрать значения таким способом Код (Text): $ids = strpos($id, '<td style="padding:4px 0 0 0;text-align:center;width:105px">'); $id = substr($id, $ids); $ids = strpos($id, '</td>'); $id = substr($id, 0, $ids); echo $id; В чем может быть проблема? Других ячеек с таким же стилем пустых нет. Это первая. Если задавать другие параметры (например первые 2 цифры числа из этой ячейки), то проблем нет.
ставил вардампы, понять проблему не помогло. Если делать обрезку по строкам типа по <tr></tr> тогда строку выводит из таблички, но я не знаю сколько точно символов может быть в значении А если делать как в первом посте, то получается код отрезает всё до первого тега <td style="padding:4px 0 0 0;text-align:center;width:105px">, включая его и выводит остатки страницы на экран. Добавлено спустя 15 минут 58 секунд: и еще, если попробовать вычленить вторую колонку в первой строчке, то отрезается всё равно всё до тега из предыдущего поста. Может стили не успевают подгружаться? Добавлено спустя 5 минут 17 секунд: и еще, сразу не обратил внимания, но если я обрезаю всё по <tr></tr>, то почему не видна остальная структура таблицы? Добавлено спустя 6 минут 35 секунд: разобрался. проблема была где ее и искал, но долго не замечал. Если кому будет полезно поясню. В хроме есть отладка вот через нее я и смотрел хтмл код, там он мне выдавал в коде страницы кавычки в значениях стиля, а когда я только что открыл именно код страницы, то увидел, что на самом деле там апострофы. Всё работает. Эт капец
Друзья, помогите, у меня творческий затык. Короче написал парсерочек, отлично все данные находит, в базу добавляет - красота. Но возникла небольшая сложность не знаю как сделать рациональнее перебор страничек. Структура такая: 1.php - авторизация на сайте 2.php - получение нужной страницы 3.php - обработка данных и запись в БД Так вот, когда я во втором файле получаю страницу первую и обрабатываю ее третьим файлом всё круто, но как изменить затем номер страницы во втором файле? Передавать ГЕТом? Дублировать код? Подскажите как это будет лучше сделать?
печально Добавлено спустя 21 минуту 3 секунды: Первый файл кода, который забирает страницу Код (Text): <?php $cookie_file = 'cookie.txt'; $counter = 1; $instaURL = 'https://cabinet.instaforex.com/partner/account_history'; $NEWinstaURL = 'https://cabinet.instaforex.com/partner/account_history/get_history/'.$counter; $db = mysql_connect ("localhost","kentastik_kalk","123456"); mysql_select_db("kentastik_kalk", $db); $myrow = "SELECT id FROM rebate ORDER BY id DESC"; $myID = mysql_query($myrow); $row = mysql_fetch_array($myID); echo $row['id']; // ------------- начало цикла изменения урла ---------------- $ch = curl_init($NEWinstaURL); curl_setopt($ch, CURLOPT_URL, $NEWinstaURL); curl_setopt($ch, CURLOPT_USERAGENT, 'Mozilla/5.0 (Windows NT 6.1; WOW64; rv:13.0) Gecko/20100101 Firefox/13.0.1'); curl_setopt($ch, CURLOPT_REFERER, $instaURL); curl_setopt($ch, CURLOPT_ENCODING, 'gzip, deflate'); curl_setopt($ch, CURLOPT_COOKIEJAR, $cookie_file); curl_setopt($ch, CURLOPT_COOKIEFILE, $cookie_file); $header = array(); $header[] = 'Accept: */*'; $header[] = 'Accept-Charset: '; $header[] = 'Accept-Language: ru-ru,ru;q=0.8,en-us;q=0.5,en;q=0.3'; $header[] = 'Pragma: '; curl_setopt($ch, CURLOPT_HTTPHEADER, $header); curl_setopt($ch, CURLOPT_POST, true); $today = date('m/d/Y'); $TODAY = 'end='.$today; $fields = array(); $fields[] = 'acc=000000'; //не забыть про другие аккаунты на евро и рублях $fields[] = "'".$TODAY."'"; $fields[] = 'notComission=false'; $fields[] = 'notCompression=false'; $fields[] = 'start=07/10/2010'; curl_setopt($ch, CURLOPT_POSTFIELDS, implode('&', $fields)); curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true); curl_setopt($ch, CURLOPT_AUTOREFERER, true); curl_exec($ch); curl_close($ch); mysql_close($db); // --- выход из БД --- // ---------- конец цикла изменения урла ---------------- ?> Второй файл, который обрабатывает страницу Код (Text): <?php $homepage = file_get_contents('http://robokapper.bet-school.com/page.php'); $pos = strpos($homepage, '<table style="width:100%;" cellpadding="0" cellspacing="0" border="0">'); $homepage = substr($homepage, $pos); $pos = strpos($homepage, '</table>'); $homepage = substr($homepage, 0, $pos); $STROKI = explode("<tr>", $homepage); // --- подключение к БД ---- $db = mysql_connect ("localhost","kentastik_kalk","123456"); mysql_select_db("kentastik_kalk", $db); // ------ цикл перебора строк ------ $i = 1; while($i < 52 ) { // ------ проверка условий ------ include ('znacheniya.php'); if($REBATE[0] === "Rebate") { // ------ добавление в БД ------ $chislo = date('Y-m-d', strtotime($TIME[0])); $vstavka = "INSERT INTO rebate (id,date,agent,schet,komissiya,valuta) VALUES ('$ID[1]','$chislo','$REBATE[0]','$REBATE[2]','$DENGI[0]','$DENGI[1]')"; $result = mysql_query($vstavka); echo $TODAY." Успешно добавлена запись в БД!<br>"; // ------ КОНЕЦ добавление в БД ------ } // ------ КОНЕЦ проверка условий ------ //echo $STROKI[$i]; $i = $i + 2; } // ------ КОНЕЦ цикл перебора строк ------ mysql_close($db); // --- выход из БД --- ?> Вопрос каким макаром менять страницу в первом файле? Так надеюсь понятно стало