
Possivelmente ter precisado de alguma vez obter o conteúdo, ou parte dele, um Web, Se é necessário coletar dados ou para qualquer tipo de monitoramento sobre uma coisa, ou só porque você quer criar o seu próprio esteira rolante, os sites de varredura, como fazer o bots Google, Bing, Yahoo,…
Há uma biblioteca muito útil que nos ajuda a realizar esta tarefa em PHP. O nome dele é Caracol e permite a conexão a outros ambientes usando protocolos diferentes. Usando cURL, vamos ver como você pode obter o conteúdo de um site em PHP.
Como obter o conteúdo de uma página da Web usando a biblioteca PHP cURL
Utilizando a biblioteca cURL, Você pode obter o conteúdo site completo. Depois de ter seu conteúdo, Você pode realizar qualquer pesquisa nele. Como um exemplo, no código da PHP que mostramos aqui, Nós temos uma função que obtém o conteúdo de um site cujo endereço URL é passado como um parâmetro, e retorna uma seqüência de caracteres que representa a página da web.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 | function getContenidoWeb($url){ $ch = curl_init(); curl_setopt($ch, CURLOPT_HEADER, 0); curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); curl_setopt($ch, CURLOPT_URL, $url); $data = curl_exec($ch); curl_close($ch); return $data; } //Ejemplo de uso $cadena = getContenidoWeb('http://www.web.com'); |
Assim que tiver o conteúdo da web em uma seqüência de caracteres, Uma possibilidade é parsearlo e transformá-lo em um objeto XML o DOM, tanta mais fácil manipulação.
Um exemplo disso é usando a classe DOMDocument. Usando essa classe você pode analisar a seqüência de caracteres que você obteve anteriormente e transformá-lo em um objeto XML ou seu respectivo árvore DOM. Um exemplo disto é o seguinte:
1 2 | $doc = new DOMDocument(); $doc->loadHTML($cadena); |
Neste código, Podemos ver como, Em primeiro lugar, Nós criamos um DOMDocument-documento, que posteriormente carregar o conteúdo da variável $Cadeia de, Esse é o obtido anteriormente a função getContenidoWeb.
Desta forma você pode obter o conteúdo de uma página Web utilizando PHP e depois converter para XML, ou seu respectivo árvore DOM para ser capaz de gerenciá-lo melhor.
