Se o seu conteúdo tiver <div>
, seu script / código precisará ser inteligente o suficiente para identificar o fechamento correspondente </div>
.
Eu encontrei uma solução baseada em PHP que pode fazer isso. Encontre aqui: PHP HTML DOM Parser ( link )
Você pode usar isso em combinação com directoryiterator
e file_put_contents
para gravar arquivos com conteúdo em um loop.
Se você quiser inserir isso em um modelo HTML, poderá salvar seu modelo HTML com algum texto discernível no lugar do conteúdo real que deseja colocar assim:
<div class="new_data">
replace_me_discernible_text_not_appearing_anywhere_else_in_file
</div>
Depois, você pode substituir este texto pelo seu conteúdo. Aqui está um script completo para fazer isso (o crédito parcial do Script vai para o OP. Eu estou colando aqui para referência futura ):
<?php
include('simple_html_dom.php');
$destdir = "extracted_html";
$oldMessage = "replace_me_discernible_text_not_appearing_anywhere_else_in_file";
$dir = new DirectoryIterator("content_html");
foreach ($dir as $fileinfo)
{
if (!$fileinfo->isDot())
{
$file_name = basename($fileinfo);
$html = file_get_html("content_html/$file_name");
foreach($html->find('div.heading') as $e)
{
$str=file_get_contents('template.html');
$str=str_replace($oldMessage, $e,$str);
file_put_contents("$destdir/$file_name", $str);
echo $file_name . " <b>Done!</b> </br>";
}
}
}
?>
Espero que isso funcione.