Infelizmente nenhum e-commerce brasileiro possui uma API para integração. Imagine as possibilidades de mashup que poderiam ser criados se o Submarino e/ou Americanas liberassem uma API para consulta de produtos e de preços.
Porém existem outras formas de fazer isso, possuem N desvantagens quando comparada com uma API, mas funciona. A maneira mais fácil é fazer um httpRequest para a site do e-commerce e buscar o preço dentro do HTML que vem no httpResponse.
Quer ver um exemplo em PHP? Estou fazendo o uso de uma biblioteca FANTÁSTICA escrita em PHP, ela se chama simplehtmldom e é usada para fazer o parser de um HTML. Veja como ficou:
<?php
include('simple_html_dom.php');
//URL do produto
$url = "http://www.submarino.com.br/produto/6/21619508";
//Nome da loja
//Valores possíveis: Americanas, Submarino
$loja = "Submarino";
$html = file_get_html($url);
if ($loja == "Americanas") {
$pattern = "dd.acomPrice";
} else if ($loja == "Submarino") {
$pattern = "strong.for span";
}
foreach($html->find($pattern) as $element) {
echo $element->innertext . "<br/>";
}
?>
Funciona de uma forma bem simples, a função file_get_html faz um request para o endereço que está na variável $url, método find você passa uma expressão para buscar algum conteúdo dentro do resultado HTML que da $url. Para quem conhece jQuery vai perceber que a sintaxe do “pattern” é o mesmo, extremamente simples e fácil de usar.
No caso do Americanas, estamos procurando todos os elementos dd que possuem a classe css acomPrice, dentro desta tag é que está o preço. No submarino o preço está dentro de um span que, por sua vez, está dentro de um strong com a classe css for.
Se você precisa buscar o preço de um produto em alguma loja que não seja essas duas, basta aninhar mais um if ali na verificação da loja e jogar na variável $pattern o caminho do preço no e-commerce que você precisa.
Se você está pensando em fazer uma busca de preço em massa, ou seja, buscar o preço de 100 ou mais produtos, eu recomendo que você faça uma pausa de 5~10 segundos para não sobrecarregar o servidor do e-commerce. Use com moderação.
Clique aqui para fazer o download de 'Buscador preço PHP' (7.44 kB)Este é o arquivo de exemplo que coloquei no post e também a biblioteca simplehtmldom.
UPDATE 30/04/2011: Como este script se baseia na estrutura da página HTML dos e-commerces, ele pode parar de funcionar a qualquer momento caso alguma alteração na página do e-commerce seja feita. É necessário alterar este script para atender a nova estrutura.