function scrappe_offre($html, $referenceb) { $dom = new simple_html_dom(); $dom->load($html); $div = $dom->find("div.tx-sqliwebServiceanpe-pi5"); $span = $dom->find("div.tx-sqliwebServiceanpe-pi5 span.texteANPEDetail"); $actualisation = $span[1]->plaintext; $record = array(); //'NumOffre_et_description' => $dom->find("div.tx-sqliwebServiceanpe-pi5 h3")->plaintext, //005FZJB - testeur / testeuse informatique foreach ($span as $data) { //$textb = html_entity_decode(htmlentities2utf8($data->plaintext) , ENT_COMPAT, "UTF-8"); # $text = htmlspecialchars_decode($data->plaintext); # $text = $data->plaintext; $text = htmlentities((string) $data->plaintext, ENT_QUOTES, 'utf-8', FALSE); #decodeAccented($encodedValue, $options = array()) #$text = decodeAccented($text); #$text = $tab[0]; array_push($record, $text); #array_push($record, explode(' : ', $text, 2) ); #$record[] = explode(' : ', $text, 2); $splited = array(); $splited[] = explode(' : ', $text, 2); print_r($splited); $key = $splited[0][0]; $value = $splited[0][1]; if ($key == "durée hebdomadaire de travail") { if ($value == "35h hebdo") { $value = "35h"; } } if ($key == "type de contrat") { if ($value == "contrat à durée indéterminée") { $value = "CDI"; } } if ($key == "permis") { if ($value == "b - véhicule léger (Exigé)") { $value == "Permis B exigé"; } } if ($key == "taille de l'entreprise") { if ($value == "100 à 199 salariés") { $value = "entre 100 et 200 salariés"; } } save_key_value($key, $value, count($splited[0])); if ($key == "lieu de travail") { $lieu_travail = explode(' - ', $value, 2); $departement = $lieu_travail[0]; $ville = ucfirst($lieu_travail[1]); save_key_value("departement", $departement, 2); save_key_value("ville", $ville, 2); save_key_value("map", "http://nominatim.openstreetmap.org/search/" + $ville + "?limit=1&format=html", 2); } #annuel de 20 000.00 à 34 000.00 euros sur 13 mois #if($key == "salaire indicatif") # $value = "mensuel de 2 600 à 3 000 euros sur 13 mois mutuelle participation/action" } //'actualiseJJ' => intval($actualisation[29].$actualisation[30]), //01 ou 1 le premier janvier ? print json_encode($record) . "\n"; #scraperwiki::save(array('contenu_offre'), $record); #return $record; }
function scrappe_offre($html, $referenceb) { $dom = new simple_html_dom(); $dom->load($html); $div = $dom->find("div.tx-sqliwebServiceanpe-pi5"); $span = $dom->find("div.tx-sqliwebServiceanpe-pi5 span.texteANPEDetail"); $actualisation = $span[1]->plaintext; $record = array(); //'NumOffre_et_description' => $dom->find("div.tx-sqliwebServiceanpe-pi5 h3")->plaintext, //005FZJB - testeur / testeuse informatique foreach ($span as $data) { $text = htmlentities((string) $data->plaintext, ENT_QUOTES, 'utf-8', FALSE); array_push($record, $text); #array_push($record, explode(' : ', $text, 2) ); #$record[] = explode(' : ', $text, 2); $splited = array(); $splited[] = explode(' : ', $text, 2); #print_r($splited); $key = $splited[0][0]; $value = $splited[0][1]; if ($key == "durée hebdomadaire de travail") { if ($value == "35h hebdo") { $value = "35h"; } } if ($key == "type de contrat") { if ($value == "contrat à durée indéterminée") { $value = "CDI"; } } if ($key == "permis") { if ($value == "b - véhicule léger (Exigé)") { $value == "Permis B exigé"; } } if ($key == "taille de l'entreprise") { if ($value == "100 à 199 salariés") { $value = "entre 100 et 200 salariés"; } } save_key_value($key, $value, count($splited[0])); if ($key == "lieu de travail") { $lieu_travail = explode(' - ', $value, 2); $departement = $lieu_travail[0]; $ville = ucfirst($lieu_travail[1]); save_key_value("departement", $departement, 2); save_key_value("ville", $ville, 2); save_key_value("map", "http://nominatim.openstreetmap.org/search/" + $ville + "?limit=1&format=html", 2); } } }