All for Joomla All for Webmasters
Mineração de Dados Ruby

WordPress: Minerando Posts através da REST API em Ruby

Em um dos primeiros posts do blog, mostrei um exemplo de crawler para minerar notícias utilizando o Nokogiri. Apesar de ser uma boa demonstração para um propósito geral, a mineração de notícias e posts em blogs pode ser facilitada se o mesmo tiver disponível uma API REST. No caso de blogs em WordPress, por exemplo, essa API já vem habilitada por padrão e tem seu endereço conhecido. Vou demonstrar nesse post como fazer a consulta/recuperação de posts através dessa API.

Como exemplo, vou utilizar o blog de notícias Meu PS4, mas o método pode ser utilizado para qualquer blog WordPress com a API habilitada. Para checar, você pode acessar o endereço padrão da API no seu navegador: https://www.o_endereco_do_blog.com.br/wp-json/wp/v2/posts. Se estiver habilitada, você verá os 10 posts mais recentes no formato JSON. Para manipular essas informações, utilizo as gemas ‘open-uri’ (para abrir endereço remoto como arquivo) e json (para fazer o parsing da resposta) que podem ser obtidas através do comando gem install.

Exemplo de retorno JSON

O CÓDIGO-FONTE

Nesse exemplo mais trivial, são recuperadas informações básicas (título, conteúdo, link, autor e imagem destaque) dos 10 posts mais recentes. O parâmetro “_embed” é adicionado à URL para que a consulta retorne informações de entidades anexas ao post (como autor e imagem destaque) sem a necessidade de consultas adicionais. Outros parâmetros úteis são o page (para informar o número da página/deslocamento e recuperar posts mais antigos) e o search (para recuperar posts com termos específicos). O guia de referência completo da API do WordPress pode ser consultada aqui.

É válido ressaltar a necessidade de sanitizar o conteúdo retornado por questões de segurança. Além de evitar injeção de códigos, o conteúdo do post pode conter tags de scripts e estilos CSS indesejados (o Nokogiri é uma boa opção para auxiliar na remoção de tags em conteúdo HTML). Além da mineração de dados, o uso da API é válido para recuperação de conteúdo próprio, na implementação de um aplicativo mobile que exibe suas postagens, por exemplo.

Quaisquer dúvidas ou sugestões, utilize a área de comentários ou entre em contato!

Você Também Pode Gostar

1 Comentário

  • Responder
    Sannytet
    12 de dezembro de 2018 at 03:11

    Nice posts! 🙂
    ___
    Sanny

  • Deixe uma Resposta