404 lines
25 KiB
PHP
404 lines
25 KiB
PHP
<?
|
|
define('HOST_INSEE', 'avis-situation-sirene.insee.fr');
|
|
define('SITE_INSEE', 'http://'. HOST_INSEE .'/');
|
|
define('HOST_PJ', 'www.pagesjaunes.fr');
|
|
define('SITE_PJ', 'http://'. HOST_PJ .'/');
|
|
define('SITE_SOCIETE', 'http://www.societe.com/');
|
|
|
|
require_once 'default/_includes/includes/insee.class.php';
|
|
//include('includes/normad.class.php');
|
|
require_once 'default/_includes/includes/fonctions.php';
|
|
|
|
/* v0.1 Extraction d'informations INSEE en ligne de commande.
|
|
|
|
Usage: <?=$argv[0]?> <extract type> <fileIn> <fileInFmt> <fileOut> <fileOutFmt>
|
|
|
|
Where <extract type> is :
|
|
id siren.tm.fr : Fiche d'identite INSEE (établissement+entreprise)
|
|
lst siren.tm.fr : Liste des etablissements du SIREN (+infos entreprise)
|
|
rncs societe.com : Informations du RNCS
|
|
pj pagesjaunes.fr : Données des pages jaunes
|
|
coface cofacerating.fr : Coface
|
|
|
|
Where <fileInFmt> is :
|
|
csv Fichier IN au format CSV (; ou ,) SIREN;NIC;REF
|
|
plat Fichier IN au format plat (blancs significatifs) SIREN_____NIC__REF______________
|
|
|
|
Where <fileOutFmt> is : csv / todo
|
|
|
|
Le fichier en entrée doit être au format <fileInFmt> et contenir le SIREN en première colonne.
|
|
*/
|
|
|
|
$insee=&new Insee();
|
|
function getInfosSirene($sirenLu, $nicLu='') {
|
|
$tabRet=array();
|
|
|
|
$invalide=false;
|
|
if (valideSiren($sirenLu)==false) {
|
|
$libelleErreur='SIREN invalide';
|
|
$invalide=true;
|
|
}
|
|
if ( $nicLu<>'' && valideSiren($sirenLu, $nicLu)==false) {
|
|
$libelleErreur='SIRET invalide';
|
|
$invalide=true;
|
|
}
|
|
if ($invalide==true)
|
|
{
|
|
$siret=$sirenLu.$nicLu;
|
|
$str=date('d/m/Y à H:i:s') .';'. $libelleErreur .';'. $siret .';;;;;;;;;;;;;;;;;;;;;;;';
|
|
$fp=fopen(realpath(dirname(__FILE__)) . '/../../framework/_includes/includes/partenaires/insee/debug.csv', 'a');
|
|
fwrite($fp, $str."\r\n");
|
|
fclose($fp);
|
|
$num=$key+1;
|
|
flush();
|
|
} else { // La demande est valide on va à l'INSEE
|
|
/** Paramètre de requête "option" à l'insee :
|
|
** 1: Fiche du siège + Données entreprises
|
|
** 2: Tous les établissements de l'entreprise
|
|
** 3: Un établissement particulier
|
|
** 4: Département
|
|
**/
|
|
if ($nicLu<>'') $option=3;
|
|
else $option=1;
|
|
|
|
$libelleErreur='Erreur SCRIPT Inconnue';
|
|
$tabInfoEtab=array();
|
|
$tabInfoEntrep=array();
|
|
|
|
/** Etape de connexion au site de l'INSEE pour simuler correctement un utilisateur WEB
|
|
**/
|
|
$response1=getUrl(SITE_INSEE);
|
|
$response=getUrl(SITE_INSEE .'REPERTOIRE/Interrogation/frame_interrogation.asp?ACTION=nouvelle&Niveau=siren', $response1["header"]["Set-Cookie"], '', SITE_INSEE .'SIRENET_Script/Accueil/script_page_accueil.asp');
|
|
|
|
$response=getUrl(SITE_INSEE .'SIRENET_Script/Interrogation/script_recherche_menu.asp?niveau=siren', $response1["header"]["Set-Cookie"], '', SITE_INSEE .'REPERTOIRE/Interrogation/frame_interrogation.asp?ACTION=nouvelle&Niveau=siren');
|
|
$response=getUrl(SITE_INSEE .'SIRENET_Script/Interrogation/script_recherche_barre_haut.asp?niveau=siren', $response1["header"]["Set-Cookie"], '', SITE_INSEE .'REPERTOIRE/Interrogation/frame_interrogation.asp?ACTION=nouvelle&Niveau=siren');
|
|
|
|
$response=getUrl(SITE_INSEE .'REPERTOIRE/Interrogation/Interrogation_haut.asp?grille=siren&action=nouvelle', $response1["header"]["Set-Cookie"], '', SITE_INSEE .'REPERTOIRE/Interrogation/frame_interrogation.asp?ACTION=nouvelle&Niveau=siren');
|
|
$response=getUrl(SITE_INSEE .'REPERTOIRE/Interrogation/Interrogation_principal.asp?grille=siren&action=nouvelle', $response1["header"]["Set-Cookie"], '', SITE_INSEE .'REPERTOIRE/Interrogation/frame_interrogation.asp?ACTION=nouvelle&Niveau=siren');
|
|
$response=getUrl(SITE_INSEE .'REPERTOIRE/Interrogation/Interrogation_bas.asp?grille=siren&action=nouvelle', $response1["header"]["Set-Cookie"], '', SITE_INSEE .'REPERTOIRE/Interrogation/frame_interrogation.asp?ACTION=nouvelle&Niveau=siren');
|
|
|
|
$response=getUrl(SITE_INSEE .'REPERTOIRE/Interrogation/Interrogation_haut.asp?grille=siren&action=nouvelle', $response1["header"]["Set-Cookie"], '', SITE_INSEE .'REPERTOIRE/Interrogation/Interrogation_principal.asp?grille=siren&action=nouvelle');
|
|
$response=getUrl(SITE_INSEE .'REPERTOIRE/Interrogation/Interrogation_bas.asp?grille=siren&action=nouvelle', $response1["header"]["Set-Cookie"], '', SITE_INSEE .'REPERTOIRE/Interrogation/Interrogation_principal.asp?grille=siren&action=nouvelle');
|
|
|
|
if ($nicLu=='') //Faire une boucle de recherche de tous les établissement et y inclure le reste du traitement
|
|
{
|
|
// Requête d'interrogation
|
|
$postData=array(
|
|
'siren'=>$sirenLu,
|
|
'option'=>2,
|
|
'nic'=>'',
|
|
'dep'=>'',
|
|
'listeDep'=>'');
|
|
|
|
$response=getUrl(SITE_INSEE .'REPERTOIRE/Interrogation/Interrogation_principal.asp?action=valider&grille=siren&waitframe=false', $response1["header"]["Set-Cookie"], $postData, SITE_INSEE .'REPERTOIRE/Interrogation/Interrogation_principal.asp?grille=siren&action=nouvelle');
|
|
$action='nouveau';
|
|
$referer=SITE_INSEE .'REPERTOIRE/Interrogation/Interrogation_principal.asp?action=valider&grille=siren&waitframe=false';
|
|
$nbRepTot=$pageCour=$nbTotPage=$nbRepParPage=$numEtab=0;
|
|
$tabInfoEtab=array();
|
|
|
|
while(true)
|
|
{
|
|
$responseQ=getUrl(SITE_INSEE .'REPERTOIRE/reponse/question.asp?action='.$action, $response1["header"]["Set-Cookie"], '', $referer);
|
|
if ($responseQ['code']==302)
|
|
{
|
|
//$libelleErreur='Erreur INSEE inconnue 1';
|
|
|
|
// Siren Invalide ou autre erreur non répertoriée !
|
|
$header=$responseQ['header'];
|
|
if (trim($header['Location'])=='/REPERTOIRE/Reponse/Frame_Reponse.asp?dest=erreur')
|
|
{
|
|
$responseQ=getUrl(SITE_INSEE .'REPERTOIRE/Reponse/Frame_Reponse.asp?dest=erreur', $response1["header"]["Set-Cookie"], '', SITE_INSEE .'REPERTOIRE/Interrogation/Interrogation_principal.asp?action=valider&grille=siren&waitframe=false');
|
|
$responseErreur=getUrl(SITE_INSEE .'REPERTOIRE/Reponse/Erreur_principal.asp', $response1["header"]["Set-Cookie"], '', SITE_INSEE .'REPERTOIRE/Reponse/Frame_Reponse.asp?dest=erreur',true);
|
|
$pos=strpos($responseErreur['body'], '<td valign=top bgcolor="#FFCC33"><font face=Arial size=2><b>');
|
|
if ($pos>0){
|
|
$posFin=strpos($responseErreur['body'], '</b></font></td>', $pos+60);
|
|
$libelleErreur=trim(substr($responseErreur['body'], $pos+60, $posFin-($pos+60)));
|
|
} else
|
|
$libelleErreur='Erreur INSEE inconnue';
|
|
}
|
|
|
|
// On déroule les URLs d'appels liste des établissements
|
|
$responseQ=getUrl(SITE_INSEE .'REPERTOIRE/Reponse/Frame_Reponse.asp?dest=liste', $response1["header"]["Set-Cookie"], '', SITE_INSEE .'REPERTOIRE/Interrogation/Interrogation_principal.asp?action=valider&grille=siren&waitframe=false');
|
|
//sleep(1);
|
|
// Frames réponse niveau Etab
|
|
$responseQ=getUrl(SITE_INSEE .'SIRENET_Script/Interrogation/script_recherche_menu.asp?niveau=siren', $response1["header"]["Set-Cookie"], '', SITE_INSEE .'REPERTOIRE/Reponse/Frame_Reponse.asp?dest=liste');
|
|
$responseQ=getUrl(SITE_INSEE .'SIRENET_Script/Interrogation/script_recherche_barre_haut.asp?niveau=siren', $response1["header"]["Set-Cookie"], '', SITE_INSEE .'REPERTOIRE/Reponse/Frame_Reponse.asp?dest=liste');
|
|
$responseQ=getUrl(SITE_INSEE .'REPERTOIRE/Reponse/Reponse_haut.asp', $response1["header"]["Set-Cookie"], '', SITE_INSEE .'REPERTOIRE/Reponse/Frame_Reponse.asp?dest=liste');
|
|
$responseListe=getUrl(SITE_INSEE .'REPERTOIRE/Reponse/Liste_principal.asp', $response1["header"]["Set-Cookie"], '', SITE_INSEE .'REPERTOIRE/Reponse/Frame_Reponse.asp?dest=liste', true);
|
|
$responseQ=getUrl(SITE_INSEE .'REPERTOIRE/Reponse/Liste_bas.asp', $response1["header"]["Set-Cookie"], '', SITE_INSEE .'REPERTOIRE/Reponse/Frame_Reponse.asp?dest=liste');
|
|
$responseListe=$responseListe['body'];
|
|
|
|
$pos=strpos($responseListe, 'Nombre total de réponses : '."\r\n\t\t\t".'<font face="Arial" size="2"><b>');
|
|
if ($pos>0) {
|
|
$posFin=strpos($responseListe, '</b></font>', $pos+73);
|
|
$nbRepTot=trim(substr($responseListe, $pos+73, $posFin-($pos+73)));
|
|
}
|
|
$pos=strpos($responseListe, ' - Affichage de la page '."\r\n\t\t\t".'<font face="Arial" size="2"><b>');
|
|
if ($pos>0) {
|
|
$posFin=strpos($responseListe, ' - </b></font>', $pos+75);
|
|
$strPages=trim(substr($responseListe, $pos+75, $posFin-($pos+75)));
|
|
$tabPages=explode(' / ', $strPages);
|
|
$pageCour=$tabPages[0];
|
|
$nbTotPage=$tabPages[1];
|
|
}
|
|
$pos=strpos($responseListe, ' - </b></font>'."\r\n\t\t\t".'<font face="Arial" size="2"><b>');
|
|
if ($pos>0) {
|
|
$posFin=strpos($responseListe, '</b></font>', $pos+60);
|
|
$nbRepParPage=trim(substr($responseListe, $pos+60, $posFin-($pos+60)));
|
|
}
|
|
|
|
/* TODO = Récupérer les infos étab + entrep pour chaque ligne du tableau !!!*
|
|
*/
|
|
if ($libelleErreur=='Erreur SCRIPT Inconnue')
|
|
$libelleErreur='';
|
|
for ($i=1;$i<11; $i++)
|
|
{
|
|
if ($numEtab==$nbRepTot)
|
|
break; // Il n'y a pas plus d'établissement à récupérer ! On sort...
|
|
|
|
$responseQ=getUrl(SITE_INSEE .'REPERTOIRE/reponse/question.asp?action=detail&numtableau='.$i, $response1["header"]["Set-Cookie"], '', SITE_INSEE .'REPERTOIRE/Reponse/Liste_principal.asp');
|
|
if ($responseQ['code']==302)
|
|
{
|
|
// Siren Invalide ou autre erreur non répertoriée !
|
|
$header=$responseQ['header'];
|
|
if (trim($header['Location'])=='/REPERTOIRE/Reponse/Frame_Reponse.asp?origine=liste&dest=detail&niveau=siege&numtableau='.$i)
|
|
{
|
|
// On déroule les URLs d'appels fiche siège
|
|
$responseQ=getUrl(SITE_INSEE .'REPERTOIRE/Reponse/Frame_Reponse.asp?dest=detail&niveau=siege&numtableau='.$i, $response1["header"]["Set-Cookie"], '', SITE_INSEE .'REPERTOIRE/Interrogation/Interrogation_principal.asp?action=valider&grille=siren&waitframe=false');
|
|
//sleep(1);
|
|
// Frames réponse niveau Etab
|
|
$responseQ=getUrl(SITE_INSEE .'SIRENET_Script/Interrogation/script_recherche_menu.asp?niveau=siren', $response1["header"]["Set-Cookie"], '', SITE_INSEE .'REPERTOIRE/Reponse/Frame_Reponse.asp?dest=detail&niveau=siege');
|
|
$responseQ=getUrl(SITE_INSEE .'SIRENET_Script/Interrogation/script_recherche_barre_haut.asp?niveau=siren', $response1["header"]["Set-Cookie"], '', SITE_INSEE .'REPERTOIRE/Reponse/Frame_Reponse.asp?dest=detail&niveau=siege');
|
|
$responseQ=getUrl(SITE_INSEE .'REPERTOIRE/Reponse/Reponse_haut.asp', $response1["header"]["Set-Cookie"], '', SITE_INSEE .'REPERTOIRE/Reponse/Frame_Reponse.asp?dest=detail&niveau=siege');
|
|
$responseEtab=getUrl(SITE_INSEE .'REPERTOIRE/Reponse/Detail_principal.asp?niveau=siege&numtableau='.$i.'&origine=liste', $response1["header"]["Set-Cookie"], '', SITE_INSEE .'REPERTOIRE/Reponse/Frame_Reponse.asp?origine=liste&dest=detail&niveau=siege&numtableau='.$i, true);
|
|
$responseQ=getUrl(SITE_INSEE .'REPERTOIRE/Reponse/Detail_bas.asp?niveau=siege&numtableau='.$i.'&origine=liste', $response1["header"]["Set-Cookie"], '', SITE_INSEE .'REPERTOIRE/Reponse/Frame_Reponse.asp?origine=liste&dest=detail&niveau=siege&numtableau='.$i);
|
|
$responseEtab=$responseEtab['body'];
|
|
|
|
// Récupération de la fiche entreprise INSEE
|
|
$responseQ=getUrl(SITE_INSEE .'REPERTOIRE/reponse/frame_reponse.asp?niveau=entreprise&dest=detail&origine=liste&numtableau='.$i, $response1["header"]["Set-Cookie"], '', SITE_INSEE .'REPERTOIRE/Reponse/Detail_principal.asp?niveau=siege&numtableau='.$i.'&origine=liste');
|
|
$responseQ=getUrl(SITE_INSEE .'SIRENET_Script/Interrogation/script_recherche_menu.asp?niveau=siren', $response1["header"]["Set-Cookie"], '', SITE_INSEE .'REPERTOIRE/reponse/frame_reponse.asp?niveau=entreprise&dest=detail&origine=liste&numtableau='.$i);
|
|
$responseQ=getUrl(SITE_INSEE .'SIRENET_Script/Interrogation/script_recherche_barre_haut.asp?niveau=siren', $response1["header"]["Set-Cookie"], '', SITE_INSEE .'REPERTOIRE/Reponse/Frame_Reponse.asp?niveau=entreprise&dest=detail&origine=liste&numtableau='.$i);
|
|
$responseQ=getUrl(SITE_INSEE .'REPERTOIRE/Reponse/Reponse_haut.asp', $response1["header"]["Set-Cookie"], '', SITE_INSEE .'REPERTOIRE/reponse/frame_reponse.asp?niveau=entreprise&dest=detail&origine=liste&numtableau='.$i);
|
|
$responseEntreprise=getUrl(SITE_INSEE .'REPERTOIRE/Reponse/Detail_principal.asp?niveau=entreprise&numtableau='.$i.'&origine=liste', $response1["header"]["Set-Cookie"], '', SITE_INSEE .'REPERTOIRE/reponse/Frame_Reponse.asp?niveau=entreprise&dest=detail&origine=liste&numtableau='.$i, true);
|
|
$responseQ=getUrl(SITE_INSEE .'REPERTOIRE/Reponse/Detail_bas.asp?niveau=entreprise&numtableau='.$i.'&origine=liste', $response1["header"]["Set-Cookie"], '', SITE_INSEE .'REPERTOIRE/reponse/Frame_Reponse.asp?niveau=entreprise&dest=detail&origine=liste&numtableau='.$i);
|
|
$responseEntreprise=$responseEntreprise['body'];
|
|
$tabInfoEntrep=getDataEntreprise($responseEntreprise);
|
|
}
|
|
elseif (trim($header['Location'])=='/REPERTOIRE/Reponse/Frame_Reponse.asp?origine=liste&dest=detail&niveau=etablissement&numtableau='.$i)
|
|
{
|
|
// On déroule les URLs d'appels établissement
|
|
$responseQ=getUrl(SITE_INSEE .'REPERTOIRE/Reponse/Frame_Reponse.asp?dest=detail&niveau=etablissement&numtableau='.$i, $response1["header"]["Set-Cookie"], '', SITE_INSEE .'REPERTOIRE/Interrogation/Interrogation_principal.asp?action=valider&grille=siren&waitframe=false');
|
|
//sleep(1);
|
|
// Frames réponse niveau Etab
|
|
$responseQ=getUrl(SITE_INSEE .'SIRENET_Script/Interrogation/script_recherche_menu.asp?niveau=siren', $response1["header"]["Set-Cookie"], '', SITE_INSEE .'REPERTOIRE/Reponse/Frame_Reponse.asp?dest=detail&niveau=etablissement');
|
|
$responseQ=getUrl(SITE_INSEE .'SIRENET_Script/Interrogation/script_recherche_barre_haut.asp?niveau=siren', $response1["header"]["Set-Cookie"], '', SITE_INSEE .'REPERTOIRE/Reponse/Frame_Reponse.asp?dest=detail&niveau=etablissement');
|
|
$responseQ=getUrl(SITE_INSEE .'REPERTOIRE/Reponse/Reponse_haut.asp', $response1["header"]["Set-Cookie"], '', SITE_INSEE .'REPERTOIRE/Reponse/Frame_Reponse.asp?dest=detail&niveau=etablissement');
|
|
$responseEtab=getUrl(SITE_INSEE .'REPERTOIRE/Reponse/Detail_principal.asp?niveau=etablissement&numtableau='.$i.'&origine=liste', $response1["header"]["Set-Cookie"], '', SITE_INSEE .'REPERTOIRE/Reponse/Frame_Reponse.asp?origine=liste&dest=detail&niveau=etablissement&numtableau='.$i, true);
|
|
$responseQ=getUrl(SITE_INSEE .'REPERTOIRE/Reponse/Detail_bas.asp?niveau=etablissement&numtableau='.$i.'&origine=liste', $response1["header"]["Set-Cookie"], '', SITE_INSEE .'REPERTOIRE/Reponse/Frame_Reponse.asp?origine=liste&dest=detail&niveau=etablissement&numtableau='.$i);
|
|
$responseEtab=$responseEtab['body'];
|
|
}
|
|
|
|
$tabInfoEtab=getDataEtablissement($responseEtab);
|
|
$tabRet[]=array_merge($tabInfoEtab, $tabInfoEntrep);
|
|
|
|
if ($libelleErreur<>'' && $tabInfoEtab['siret'] =='') $siret=$sirenLu . $nicLu;
|
|
else $siret=$tabInfoEtab['siret'];
|
|
|
|
$str= date('d/m/Y à H:i:s') .';'.
|
|
$libelleErreur .';'.
|
|
// Siège
|
|
$siret .';'.
|
|
$tabInfoEtab['active'] .';'.
|
|
$tabInfoEtab['dateAbsActivite'] .';'.
|
|
$tabInfoEtab['typeEtablissement'] .';'.
|
|
$tabInfoEtab['dateMAJ'] .';'.
|
|
$tabInfoEtab['dateCreation'] .';'.
|
|
$tabInfoEtab['raisonSociale'] .';'.
|
|
$tabInfoEtab['Enseigne'] .';'.
|
|
$tabInfoEtab['NafCode'] .';'.
|
|
$tabInfoEtab['NafLib'] .';'.
|
|
$tabInfoEtab['AdresseLigne1'] .';'.
|
|
$tabInfoEtab['AdresseLigne2'] .';'.
|
|
$tabInfoEtab['AdresseLigne3'] .';'.
|
|
$tabInfoEtab['etatJuridique'] .';'.
|
|
$tabInfoEtab['dateEtatJuridique'] .';'.
|
|
// Entreprise
|
|
$tabInfoEntrep['dateCreationEntrep'] .';'.
|
|
$tabInfoEntrep['raisonSocialeEntrep'] .';'.
|
|
$tabInfoEntrep['sigle'] .';'.
|
|
$tabInfoEntrep['NafCodeEntrep'] .';'.
|
|
$tabInfoEntrep['NafLibEntrep'] .';'.
|
|
$tabInfoEntrep['FJCodeEntrep'] .';'.
|
|
$tabInfoEntrep['FJLibEntrep'] .';'.
|
|
$tabInfoEntrep['nbEtabActifs'] .';';
|
|
|
|
$fp=fopen(realpath(dirname(__FILE__)) . '/../../framework/_includes/includes/partenaires/insee/debug.csv', 'a');
|
|
fwrite($fp, $str."\r\n");
|
|
fclose($fp);
|
|
|
|
$numEtab++;
|
|
$num=$key+1;
|
|
$typeEtablissement=$tabInfoEtab['typeEtablissement'];
|
|
// echo "Question $num/$nbLignes : Demande=$sirenLu$nicLu Etablissement $numEtab/$nbRepTot $typeEtablissement=$siret $libelleErreur\r\n";
|
|
flush();
|
|
sleep(1);
|
|
|
|
}//end for
|
|
}//end if
|
|
if ($pageCour==$nbTotPage) {
|
|
// On sort de la boucle de passage à la page de liste suivante car il n'y a plus d'autres pages
|
|
break;
|
|
} else {
|
|
$action='listeplus';
|
|
$referer=SITE_INSEE .'REPERTOIRE/Reponse/Liste_principal.asp';
|
|
}
|
|
}
|
|
} //Fin While
|
|
// die('Boucle');
|
|
} /* Fin de la boucle option 'lst' */ else
|
|
{
|
|
// Requête d'interrogation
|
|
$postData=array('siren'=>$sirenLu,
|
|
'option'=>$option,
|
|
'nic'=>$nicLu,
|
|
'dep'=>'',
|
|
'listeDep'=>'');
|
|
|
|
$response=getUrl(SITE_INSEE .'REPERTOIRE/Interrogation/Interrogation_principal.asp?action=valider&grille=siren&waitframe=false', $response1["header"]["Set-Cookie"], $postData, SITE_INSEE .'REPERTOIRE/Interrogation/Interrogation_principal.asp?grille=siren&action=nouvelle');
|
|
$responseQ=getUrl(SITE_INSEE .'REPERTOIRE/reponse/question.asp?action=nouveau', $response1["header"]["Set-Cookie"], '', SITE_INSEE .'REPERTOIRE/Interrogation/Interrogation_principal.asp?action=valider&grille=siren&waitframe=false');
|
|
if ($responseQ['code']==302)
|
|
{
|
|
//$libelleErreur='Erreur INSEE inconnue 1';
|
|
|
|
// Siren Invalide ou autre erreur non répertoriée !
|
|
$header=$responseQ['header'];
|
|
if (trim($header['Location'])=='/REPERTOIRE/Reponse/Frame_Reponse.asp?dest=erreur')
|
|
{
|
|
$responseQ=getUrl(SITE_INSEE .'REPERTOIRE/Reponse/Frame_Reponse.asp?dest=erreur', $response1["header"]["Set-Cookie"], '', SITE_INSEE .'REPERTOIRE/Interrogation/Interrogation_principal.asp?action=valider&grille=siren&waitframe=false');
|
|
$responseErreur=getUrl(SITE_INSEE .'REPERTOIRE/Reponse/Erreur_principal.asp', $response1["header"]["Set-Cookie"], '', SITE_INSEE .'REPERTOIRE/Reponse/Frame_Reponse.asp?dest=erreur',true);
|
|
$pos=strpos($responseErreur['body'], '<td valign=top bgcolor="#FFCC33"><font face=Arial size=2><b>');
|
|
if ($pos>0){
|
|
$posFin=strpos($responseErreur['body'], '</b></font></td>', $pos+60);
|
|
$libelleErreur=trim(substr($responseErreur['body'], $pos+60, $posFin-($pos+60)));
|
|
} else
|
|
$libelleErreur='Erreur INSEE inconnue';
|
|
}
|
|
else
|
|
{ if (trim($header['Location'])=='/REPERTOIRE/Reponse/Frame_Reponse.asp?dest=detail&niveau=siege')
|
|
// L'établissement demandé est un siège !
|
|
$option=1;
|
|
|
|
if ($option==3)
|
|
{
|
|
// On déroule les URLs d'appels établissement
|
|
$responseQ=getUrl(SITE_INSEE .'REPERTOIRE/Reponse/Frame_Reponse.asp?dest=detail&niveau=etablissement', $response1["header"]["Set-Cookie"], '', SITE_INSEE .'REPERTOIRE/Interrogation/Interrogation_principal.asp?action=valider&grille=siren&waitframe=false');
|
|
//sleep(1);
|
|
// Frames réponse niveau Etab
|
|
$responseQ=getUrl(SITE_INSEE .'SIRENET_Script/Interrogation/script_recherche_menu.asp?niveau=siren', $response1["header"]["Set-Cookie"], '', SITE_INSEE .'REPERTOIRE/Reponse/Frame_Reponse.asp?dest=detail&niveau=etablissement');
|
|
$responseQ=getUrl(SITE_INSEE .'SIRENET_Script/Interrogation/script_recherche_barre_haut.asp?niveau=siren', $response1["header"]["Set-Cookie"], '', SITE_INSEE .'REPERTOIRE/Reponse/Frame_Reponse.asp?dest=detail&niveau=etablissement');
|
|
$responseQ=getUrl(SITE_INSEE .'REPERTOIRE/Reponse/Reponse_haut.asp', $response1["header"]["Set-Cookie"], '', SITE_INSEE .'REPERTOIRE/Reponse/Frame_Reponse.asp?dest=detail&niveau=etablissement');
|
|
$responseEtab=getUrl(SITE_INSEE .'REPERTOIRE/Reponse/Detail_principal.asp?niveau=etablissement', $response1["header"]["Set-Cookie"], '', SITE_INSEE .'REPERTOIRE/Reponse/Frame_Reponse.asp?dest=detail&niveau=etablissement', true);
|
|
$responseQ=getUrl(SITE_INSEE .'REPERTOIRE/Reponse/Detail_bas.asp?niveau=etablissement', $response1["header"]["Set-Cookie"], '', SITE_INSEE .'REPERTOIRE/Reponse/Frame_Reponse.asp?dest=detail&niveau=etablissement');
|
|
$responseEtab=$responseEtab['body'];
|
|
// On recherche si on est bien sur un fiche établissement
|
|
$pos=strpos($responseEtab, '<table cols="2" width="100%"><tr><td bgcolor="#FFCC33" align="left"><font face="Arial" size="2"><B>Fiche Etablissement</B>');
|
|
if ($pos<1)
|
|
$libelleErreur='Erreur SCRIPT Fiche Etablissement non trouvée';
|
|
else
|
|
$libelleErreur='';
|
|
$responseSiege=$responseEtab;
|
|
}
|
|
else
|
|
{
|
|
// On déroule les URLs d'appels Sièges
|
|
$responseQ=getUrl(SITE_INSEE .'REPERTOIRE/Reponse/Frame_Reponse.asp?dest=detail&niveau=siege', $response1["header"]["Set-Cookie"], '', SITE_INSEE .'REPERTOIRE/Interrogation/Interrogation_principal.asp?action=valider&grille=siren&waitframe=false');
|
|
//sleep(1);
|
|
// Frames réponse niveau sièges
|
|
$responseQ=getUrl(SITE_INSEE .'SIRENET_Script/Interrogation/script_recherche_menu.asp?niveau=siren', $response1["header"]["Set-Cookie"], '', SITE_INSEE .'REPERTOIRE/Reponse/Frame_Reponse.asp?dest=detail&niveau=siege');
|
|
$responseQ=getUrl(SITE_INSEE .'SIRENET_Script/Interrogation/script_recherche_barre_haut.asp?niveau=siren', $response1["header"]["Set-Cookie"], '', SITE_INSEE .'REPERTOIRE/Reponse/Frame_Reponse.asp?dest=detail&niveau=siege');
|
|
$responseQ=getUrl(SITE_INSEE .'REPERTOIRE/Reponse/Reponse_haut.asp', $response1["header"]["Set-Cookie"], '', SITE_INSEE .'REPERTOIRE/Reponse/Frame_Reponse.asp?dest=detail&niveau=siege');
|
|
$responseSiege=getUrl(SITE_INSEE .'REPERTOIRE/Reponse/Detail_principal.asp?niveau=siege', $response1["header"]["Set-Cookie"], '', SITE_INSEE .'REPERTOIRE/Reponse/Frame_Reponse.asp?dest=detail&niveau=siege', true);
|
|
$responseQ=getUrl(SITE_INSEE .'REPERTOIRE/Reponse/Detail_bas.asp?niveau=siege', $response1["header"]["Set-Cookie"], '', SITE_INSEE .'REPERTOIRE/Reponse/Frame_Reponse.asp?dest=detail&niveau=siege');
|
|
$responseSiege=$responseSiege['body'];//strip_tags(html_entity_decode(), '<td>');
|
|
// On recherche si on est bien sur un fiche siège
|
|
$pos=strpos($responseSiege, '<table cols="2" width="100%"><tr><td bgcolor="#FFCC33" align="left"><font face="Arial" size="2"><B>Fiche siège</B>');
|
|
if ($pos<1)
|
|
$libelleErreur='Erreur SCRIPT Fiche Siège non trouvée';
|
|
else
|
|
$libelleErreur='';
|
|
}
|
|
|
|
// Niveau entreprise
|
|
$responseQ=getUrl(SITE_INSEE .'REPERTOIRE/reponse/frame_reponse.asp?niveau=entreprise&dest=detail', $response1["header"]["Set-Cookie"], '', SITE_INSEE .'REPERTOIRE/Reponse/Detail_principal.asp?niveau=siege');
|
|
|
|
$responseQ=getUrl(SITE_INSEE .'SIRENET_Script/Interrogation/script_recherche_menu.asp?niveau=siren', $response1["header"]["Set-Cookie"], '', SITE_INSEE .'REPERTOIRE/reponse/frame_reponse.asp?niveau=entreprise&dest=detail');
|
|
$responseQ=getUrl(SITE_INSEE .'SIRENET_Script/Interrogation/script_recherche_barre_haut.asp?niveau=siren', $response1["header"]["Set-Cookie"], '', SITE_INSEE .'REPERTOIRE/Reponse/Frame_Reponse.asp?dest=detail&niveau=entreprise');
|
|
$responseQ=getUrl(SITE_INSEE .'REPERTOIRE/Reponse/Reponse_haut.asp', $response1["header"]["Set-Cookie"], '', SITE_INSEE .'REPERTOIRE/reponse/frame_reponse.asp?niveau=entreprise&dest=detail');
|
|
$responseEntreprise=getUrl(SITE_INSEE .'REPERTOIRE/Reponse/Detail_principal.asp?niveau=entreprise', $response1["header"]["Set-Cookie"], '', SITE_INSEE .'REPERTOIRE/reponse/frame_reponse.asp?niveau=entreprise&dest=detail', true);
|
|
$responseQ=getUrl(SITE_INSEE .'REPERTOIRE/Reponse/Detail_bas.asp?niveau=entreprise', $response1["header"]["Set-Cookie"], '', SITE_INSEE .'REPERTOIRE/reponse/frame_reponse.asp?niveau=entreprise&dest=detail');
|
|
$responseEntreprise=$responseEntreprise['body'];
|
|
$pos=strpos($responseEntreprise, '<table cols="2" width="100%"><tr><td bgcolor="#FFCC33" align="left"><font face="Arial" size="2"><B>Fiche Entreprise</B>');
|
|
if ($pos<1) {
|
|
$libelleErreur='Erreur SCRIPT Fiche Entreprise non trouvée';
|
|
}
|
|
|
|
/** Recherche des données établissement
|
|
**/
|
|
$tabInfoEtab=getDataEtablissement($responseSiege);
|
|
|
|
/** Recherche des données entreprise
|
|
**/
|
|
$tabInfoEntrep=getDataEntreprise($responseEntreprise);
|
|
|
|
}
|
|
}
|
|
|
|
if ($libelleErreur<>'' && $tabInfoEtab['siret'] =='') $siret=$sirenLu . $nicLu;
|
|
else $siret=$tabInfoEtab['siret'];
|
|
|
|
$str= date('d/m/Y à H:i:s') .';'.
|
|
$libelleErreur .';'.
|
|
// Siège
|
|
$siret .';'.
|
|
$tabInfoEtab['active'] .';'.
|
|
$tabInfoEtab['dateAbsActivite'] .';'.
|
|
$tabInfoEtab['typeEtablissement'] .';'.
|
|
$tabInfoEtab['dateMAJ'] .';'.
|
|
$tabInfoEtab['dateCreation'] .';'.
|
|
$tabInfoEtab['raisonSociale'] .';'.
|
|
$tabInfoEtab['Enseigne'] .';'.
|
|
$tabInfoEtab['NafCode'] .';'.
|
|
$tabInfoEtab['NafLib'] .';'.
|
|
$tabInfoEtab['AdresseLigne1'] .';'.
|
|
$tabInfoEtab['AdresseLigne2'] .';'.
|
|
$tabInfoEtab['AdresseLigne3'] .';'.
|
|
$tabInfoEtab['etatJuridique'] .';'.
|
|
$tabInfoEtab['dateEtatJuridique'] .';'.
|
|
// Entreprise
|
|
$tabInfoEntrep['dateCreationEntrep'] .';'.
|
|
$tabInfoEntrep['raisonSocialeEntrep'] .';'.
|
|
$tabInfoEntrep['sigle'] .';'.
|
|
$tabInfoEntrep['NafCodeEntrep'] .';'.
|
|
$tabInfoEntrep['NafLibEntrep'] .';'.
|
|
$tabInfoEntrep['FJCodeEntrep'] .';'.
|
|
$tabInfoEntrep['FJLibEntrep'] .';'.
|
|
$tabInfoEntrep['nbEtabActifs'] .';'.
|
|
//echo $str.'<br/>';
|
|
|
|
$fp=fopen(realpath(dirname(__FILE__)) . '/../../framework/_includes/includes/partenaires/insee/debug.csv', 'a');
|
|
fwrite($fp, $str."\r\n");
|
|
fclose($fp);
|
|
|
|
$num=$key+1;
|
|
$typeEtablissement=$tabInfoEtab['typeEtablissement'];
|
|
// echo "Ligne $num/$nbLignes : Question=$sirenLu$nicLu Retour $typeEtablissement=$siret $libelleErreur (PJ=$nbPJ)\r\n";
|
|
//echo $str."<br/>";
|
|
|
|
flush();
|
|
$tabRet=array(0=>array_merge($tabInfoEntrep, $tabInfoEtab));
|
|
}
|
|
}
|
|
|
|
return $tabRet;
|
|
}
|
|
?>
|