Informazioni su Indeed.com

Indeed è un motore di ricerca meta su Internet che offre ai cercatori di lavoro accesso gratuito a milioni di opportunità di impiego provenienti da migliaia di siti web in una sola ricerca come flussi di lavoro. Include tutte le offerte di lavoro da bacheche, giornali e associazioni. Qui in questo post del blog, puoi scoprire come caricare le offerte di lavoro di Indeed sul tuo sito web con semplici passaggi di codici PHP.

Passaggi per integrare l'API di Indeed

Passo 1: Crea un account su indeed.

Passo 2: Copia la richiesta XML di esempio.

Passo 3: Crea una funzione per inviare la richiesta URL.

Passo 4: Crea una funzione per convertire XML in Array.

Passo 5: Crea una pagina “indeed.php”

Passo 6: Crea una pagina index.php per visualizzare i risultati.

Passo 1: Crea un account su indeed

To make indeed integration with your website you must create an account at indeed.com . After logging in you can see the API link in the footer of  indeed.com. By clicking on it you will redirect to a indeed publisher page and you can login with your details. There you can select XML Feed option from the menu bar which provides all details about indeed XML Feed.

Passo 2: Copia il campione di richiesta XML

Dopo aver selezionato il Feed XML, riceverai una richiesta XML di esempio che include il tuo ID editore come questo “http://api.indeed.com/ads/apisearch?publisher=9xxxxxxxxxxxxxx&q=java&l=austin%2C+tx&sort=&radius=&st=

&jt=&start=&limit=&fromage=&filter=&latlong=1&co=us&chnl=&userip=1.2.3.4&useragent=Mozilla/%2F4.0%28Firefox%29&v=2”.

Puoi anche capire facilmente cosa significa ciascuna variabile nell'URL e come usarla. Puoi copiare questa API nella tua pagina web dove hai bisogno di mostrare i lavori di Indeed.

Passo 3:  Crea una funzione PHP per inviare una richiesta URL.

Dobbiamo creare una funzione per ottenere il feed XML da Indeed. Questa funzione ci aiuta a inviare la richiesta URL. È con questa richiesta URL che otteniamo il feed XML. Inoltre, puoi aggiungere o modificare i valori delle variabili nell'URL come preferisci. Qui ho cambiato alcune variabili come query q=php, limit=25. Per impostazione predefinita, estrae solo 10 dettagli di lavoro dal feed XML di Indeed.

<?php

function curl_request(){

// Ottieni la risorsa cURL

$curl = curl_init();

// Imposta alcune opzioni

curl_setopt_array($curl, array(

// Restituisci la risposta come una stringa invece di stamparla sullo schermo

CURLOPT_RETURNTRANSFER => 1,

//URL per inviare la richiesta a

CURLOPT_URL => ‘http://api.indeed.com/ads/apisearch?publisher=9xxxxxxxxxxxxxxx&q=php&l=austin%2C+tx&sort=&radius=&st=&jt=&start=&limit=100&fromage=&filter=&latlong=1&co=us&chnl=&userip=1.2.3.4&useragent=Mozilla/%2F4.0%28Firefox%29&v=2‘,));

// Invia la richiesta & salva la risposta in $resp

$resp = curl_exec($curl);

//print($resp);

// Chiudi la richiesta per liberare alcune risorse

curl_close($curl);

return $resp;

}

?>

Passo 4: Crea una funzione che converte XML in Array

Utilizzando l'URL dell'API otteniamo solo i dati XML. Questi devono essere convertiti in un array e dobbiamo creare una funzione per farlo.

Esempio per feed XML

<?xml version=”1.0″ encoding=”UTF-8″ ?>
<response version=”2″>
<query>java</query>
<location>austin, tx</location>
<dupefilter>true</dupefilter>
<highlight>false</highlight>
<totalresults>547</totalresults>
<start>1</start>
<end>10</end>
<radius>25</radius>
<pageNumber>0</pageNumber>
<results>
<result>
<jobtitle>Sviluppatore Java</jobtitle>
<company>XYZ Corp.</company>
<city>Austin</city>
<state>TX</state>
<country>US</country>
<formattedLocation>Austin, TX</formattedLocation>
<source>Dice</source>
<date>Lun, 02 Ago 2010 16:21:00 GMT</date>
<snippet>cercando un Sviluppatore Java orientato agli oggetti… Java Servlets, HTML, JavaScript,
AJAX, Struts, Struts2, JSF) desiderabile. Familiarità con Tomcat e il Java…</snippet>
<url>http://www.indeed.com/viewjob?jk=12345&indpubnum=8343699265155203</url>
<onmousedown>indeed_clk(this,’0000′);</onmousedown>
<latitude>30.27127</latitude>
<longitude>-97.74103</longitude>
<jobkey>12345</jobkey>
<sponsored>false</sponsored>
<expired>false</expired>
<formattedLocationFull>Austin, TX</formattedLocationFull>
<formattedRelativeTime>11 ore fa</formattedRelativeTime><br

Funzione

<?php

function xmlToArray($input, $callback = null, $recurse = false) {

$data = ((!$recurse) && is_string($input))? simplexml_load_string($input, ‘SimpleXMLElement’, LIBXML_NOCDATA): $input;

se ($data instanceof SimpleXMLElement) $data = (array) $data;

if (is_array($data)) foreach ($data as &$item) $item = xmlToArray($item, $callback, true);

return (!is_array($data) && is_callable($callback))? call_user_func($callback, $data): $data;

}

?>

Passo 5: Crea una pagina web “indeed.php”

Creiamo una pagina web per includere tutte le funzioni che abbiamo creato sopra.

<?php

function curl_request(){

// Ottieni la risorsa cURL

$curl = curl_init();

// Imposta alcune opzioni

curl_setopt_array($curl, array(

// Restituisci la risposta come una stringa invece di stamparla sullo schermo

CURLOPT_RETURNTRANSFER => 1,

//URL per inviare la richiesta a

CURLOPT_URL => ‘http://api.indeed.com/ads/apisearch?publisher=9xxxxxxxxxxxxxxx&q=php&l=austin%2C+tx&sort=&radius=&st=&jt=&start=&limit=25&fromage=&filter=&latlong=1&co=us&chnl=&userip=1.2.3.4&useragent=Mozilla/%2F4.0%28Firefox%29&v=2‘,

));

// Invia la richiesta & salva la risposta in $resp

$resp = curl_exec($curl);

// Chiudi la richiesta per liberare alcune risorse

curl_close($curl);

return $resp;

}

function xmlToArray($input, $callback = null, $recurse = false) {

$data = ((!$recurse) && is_string($input))? simplexml_load_string($input, ‘SimpleXMLElement’, LIBXML_NOCDATA): $input;

se ($data instanceof SimpleXMLElement) $data = (array) $data;

if (is_array($data)) foreach ($data as &$item) $item = xmlToArray($item, $callback, true);

return (!is_array($data) && is_callable($callback))? call_user_func($callback, $data): $data;

}

?>

<html>

<body>

<ol>

<?php

for($i=0;$i<25;$i++){    // utilizzando il ciclo for per mostrare il numero di  lavori

$resp=curl_request($i);

$arrXml = xmlToArray($resp);

$results=$arrXml[‘results’];

?>

<li>

<p>

<strong>Lavoro :<a href=”<?php echo $results[‘result’][$i][‘url’]; ?>” target=”_blank”><?php echo $results[‘result’][$i][‘jobtitle’]; ?></a></strong>

</p>

<p><strong>Posizione: <?php echo $results[‘result’][$i][‘city’]; ?></strong></p>

<p><strong>Data :<?php echo $results[‘result’][$i][‘date’];?></strong></p>

<p> Descrizioni :<?php echo $results[‘result’][$i][‘snippet’]; ?></p>

</li>

<?php } ?>

</ol>

</body>

</html>

Passo 6: Crea una pagina index.php con un link a Indeed per caricare i feed di lavoro.

Questa è la home page che mostra il link a indeed.php che visualizza lavori dal sito indeed.

<html>

<body>

<p>

Mostra lavori da <a href=”indeed.php”>INDEED</a>

</p>

</body>

</html>

Dopo aver creato questi due file, si prega di salvarli in una singola cartella nel localhost o nel server. Di seguito è riportato uno screenshot della pagina web che carica i lavori di Indeed.