спарсить данные из таблицы

Тема закрыта
568
.

Здравствуйте форумчане. Возникла проблема. не знаю как спарсить информацию с таблицы для записи в бд.

Есть таблица, например, ( http://vstup.info/2015/174/i20 ... .html ) в которой храниться список фамилий, балов и тд. Мне нужно преобразовать этот список в sql файл. Как это сделать?
Пытался использовать для этой цели библиотеку simple html dom, но ничего не получается. ХЗ как занести в бд именно первую строку. Может кто то из вас решал такую задачу. Помогите примером. Зарание спасибо)

.
Ей 25

naster, тебе надо ТОЛЬКО список ФИО, балов и т.д.? То что выше\ниже него не надо? Т.Е. то что находится между <tbody> </tbody> ?

.

ValekS, да

.

Для балов регулярка готова


include_once 'simple_html_dom.php';
$html = file_get_html('http://vstup.info/2015/174/i2015i174p212780.html');
preg_match_all('/<td>[0-9]{3}\.[0-9]{2,3}<\/td>/is', $html, $sum);

print_r($sum);

$html->clear(); 
unset($html);
.

Для ФИО что то не пашет

preg_match_all('/<td>[а-яё\s]{1,}<\/td>/ism', $html, $name);


Помогите, а то я в регулярках совсем зеленый
.
Ей 25

Без Simple HTML DOM. Дальше думаю разберёшься...

Как то так (+/-)
$file = file_get_contents('http://vstup.info/2015/174/i2015i174p212780.html');

preg_match('|<tfoot><tr>(.*?)</tr></tfoot>|is', $file, $tfoot);
preg_match_all('|title="(.*?)"|is', $tfoot['1'], $title);

preg_match('|</tfoot>(.*?)</table>|is', $file, $body);
preg_match_all('|<tr>(.*?)</tr>|is', $body['1'], $human);

$data = array();

foreach ($human['1'] as $value) {
preg_match_all('|<td>(.*?)</td>|is', $value, $val);

$t = $title['1'];
$v = $val['1'];

$data[] = array(
$t['0'] => strip_tags($v['0']), 
$t['1'] => strip_tags($v['1']), 
$t['2'] => strip_tags($v['2']), 
$t['3'] => strip_tags($v['3']),
$t['4'] => strip_tags($v['4']),
$t['5'] => strip_tags($v['5']),
$t['6'] => strip_tags($v['6']),
$t['7'] => strip_tags($v['7']),
$t['8'] => strip_tags($v['8']),
$t['9'] => strip_tags($v['9'])
);
}


echo '<pre>';
print_r($data);
echo '</pre>';
Прикрепленные файлы:
.

ValekS, Ооо добре. Можеш ще приклад як їх записати правильно?

.

Вывод типа

echo $data[0];


не пашет
.
(\/)____o_O____(\/)

naster, print_r($data[0]); это же массив
для записи в базу надо этот элемент массива экранировать и добавить в запрос

.

Koenig, Можете набросать пример для лучшего понимания

Всего: 18