Рейтинг темы:
  • 0 Голос(ов) - 0 в среднем
  • 1
  • 2
  • 3
  • 4
  • 5
Парсинг и\или редактирование XML
#1
Уважаемые форумчане.

После попадания мне в руки скриптов ПТС-freya, возникла потребность переработать большой объем XML)

Буду благодарен вам за подсказку софта-помощника.

Основная текущая потребность:

XML такого вида:

Цитата:<item id='1' name="One">
<set name='price' val='100' />
<set name='p_dam' val='1' />
<set name='m_dam' val='1' />
</item>
<item id='2' name="One">
<set name='price' val='100' />
<set name='p_dam' val='1' />
<set name='m_dam' val='1' />
</item>
<item id='3' name="One">
<set name='price' val='100' />
<set name='p_dam' val='1' />
<set name='m_dam' val='1' />
</item>

разобрать, вычленить id, сделать запрос в базу на предмет наличия значения для этого id и подставить строку в XML вида:

Цитата:<item id='1' name="One">
<set name='price' val='100' />
<set name='p_dam' val='1' />
<set name='m_dam' val='1' />
<set name='type' val='значение для id1' />
</item>
<item id='2' name="One">
<set name='price' val='100' />
<set name='p_dam' val='1' />
<set name='m_dam' val='1' />
<set name='type' val='значение для id2' />
</item>
<item id='3' name="One">
<set name='price' val='100' />
<set name='p_dam' val='1' />
<set name='m_dam' val='1' />
<set name='type' val='значение для id3' />
</item>



Буду благодарен за любые рабочие идеи)

Добавлено через 18 часов 49 минут
Срочность больше не актуальна, но в целом вопрос работы с XML остается открытым.

Неужели только самописные парсеры?(
Ответ
#2
ну сами хмлки загрузить и разобрать то не проблема, к примеру простейший путь - через php классом SimpleXML

а вот обратная запись уже погемморойней.
Ответ
#3
Я пытался сделать инструмент на PHP. Разбирается без проблем, а вот собрать, как вы и говорите довольно тяжело. Основной проблемой было корректная расстановка ' и " в нужных местах и правильное закрытие тегов.

Я имею ввиду другое. Может быть есть инструмент, который позволит считывать один элемент XML и в зависимости от его значения, изменять любые другие куски XML или импортировать их сразу из SQL?
Ответ
#4
тоже актуально
Ответ
#5
никогда непонимал, зачем перегонять готовые скрипты в XML:ek:
Ответ
#6
Хлорка бы сделал на яве, но она корыстная.
Ответ
#7
Для работы с xml в джаве есть отличная либа jdom, а для работы с БД в Вашем случае вполне сгодится jdbc. Скиньте sql файл со структурой таблицы и xml который нужно перепарсить.
Ответ
#8
напишу на заказ парсер птс скриптов за $ естественно)
[Изображение: 2ewe.jpg][Изображение: 1.gif]
Ответ
#9
Вот "парсер" по заданию из первого топика... если надо под конкретное задание, пишите)

PHP код:
<?php
$conf
= array(
'mysql_host' => 'localhost',
'mysql_db' => 'test',
'mysql_user' => 'root',
'mysql_pass' => 'Pa$$w0rD'
);

$file = "./test.xml"; //обрабатываемый файл

mysql_connect($my_conf['mysql_host'],$my_conf['mysql_user'],$my_conf['mysql_pass']);
mysql_select_db($my_conf['mysql_db']);

$contents_array = explode("</item>",file_get_contents($file)); //мутим массив из строки
file_put_contents($file,""); //очищаем файл
foreach($contents_array as $value){ //ковыряем все значения в массиве по очереди
preg_match("|id='(.*)'|U",$value,$out); //выдергиваем ИД
if($out[1] != ''){
$data = mysql_fetch_array(mysql_query("SELECT * FROM data_table WHERE id='$out[1]'")); //дергаем данные из базы (из таблицы data_table) для этого ИД
file_put_contents($file,$value."<set name='type' val='$data[id_value]'/></item>\r\n",FILE_APPEND); //добавляем строку и записываем в файл
}
}
mysql_close();
?>
Скачать это безобразие http://rghost.ru/37713165
Ответ


Возможно похожие темы ...
Тема Автор Ответы Просмотры Последний пост
  Редактирование ГК keSha 2 1,814 01-02-2018, 11:19 AM
Последний пост: keSha
  Редактирование пакетов\опкоды jumanji 4 1,464 11-10-2015, 05:26 PM
Последний пост: jumanji
  Парсинг npcdata.txt (PTS) raindew 6 2,643 05-22-2015, 07:16 PM
Последний пост: Zubastic
  Редактирование дропа spartana 5 1,866 05-19-2014, 12:33 PM
Последний пост: spartana
  Редактирование Свитка Трансформации Xample 7 1,937 04-27-2014, 06:11 PM
Последний пост: Xample
  Парсинг диалогов Daan Raven 5 2,005 01-03-2014, 12:09 AM
Последний пост: Bacek
  Редактирование Buffera в комунити sakson 4 1,472 06-23-2013, 10:06 AM
Последний пост: RealBlack
  Редактирование файлов Lindvior E-Lite 0 1,197 03-17-2013, 08:00 PM
Последний пост: E-Lite
  Редактирование вещей. zzqq25 6 1,984 03-21-2012, 07:34 AM
Последний пост: zzqq25
  редактирование stats Pr1Zr[aK] 5 2,290 12-25-2011, 05:00 PM
Последний пост: Pr1Zr[aK]

Перейти к форуму:


Пользователи, просматривающие эту тему: 1 Гость(ей)