quinta-feira, 24 de setembro de 2015
O Facebook está em baixo
Aquele momento em que queremos matar uns minutos a ver o lixo conteúdo fantástico que os nossos amigos andam a partilhar, e o Facebook decide explodir..
sexta-feira, 24 de julho de 2015
Como estilizar o código no Blogger
A biblioteca que estou a utilizar é a http://alexgorbatchev.com/SyntaxHighlighter/ .
Para utilizar esta biblioteca podemos inserir links directos do site do criador.
Antes do
Antes do
Para utilizar esta biblioteca podemos inserir links directos do site do criador.
Antes do
</head>colocar:
Antes do
</body>colocar os brushes necessários:
Depois é só ter o cuidado nos posts onde é referido código, em colocar um elemento HTML (editando o HTML do post) que identifique a linguagem utilizada. Exemplo:
<pre class="brush:xml">Código</pre>E está feito.
quinta-feira, 23 de julho de 2015
A sandbox do Paypal e os Payouts e o mítico INSUFFICIENT_FUNDS
Para aqueles que vão implementar algo que utiliza a API do Paypal e como bons developers vão testar primeiro na sandbox antes de lançar o projeto, atenção a um pequeno detalhe com a conta de teste, as transações têm que ser feitas na moeda da conta. Se tiver em dólares o payout tem que ser feito em USD.
Se se esquecerem deste pequeno detalhe a API vai retornar um erro super explícito INSUFFICIENT_FUNDS.
Continuação de bom desenvolvimento.
Se se esquecerem deste pequeno detalhe a API vai retornar um erro super explícito INSUFFICIENT_FUNDS.
Continuação de bom desenvolvimento.
quarta-feira, 17 de junho de 2015
Scrapping de sites - em nodejs
Normalmente quando preciso de fazer scrapping a algum site utilizo o módulo request juntamente com o cheerio, algo como:
No entanto alguns sites estão por trás de proxies que protegem contra coisas chatas como ataques de DOS, e outras coisas, e acabam por bloquear este tipo de pedidos.
A forma que encontrei para conseguir evitar ser bloqueado é utilizar um headless browser, normalmente utilizado para testes automáticos ao UI, e assim ultrapassar essas protecções chatas.
Existem alguns módulos para nodejs no entanto alguns semi vivos, outros com problemas estranhos, o que estou a utilizar sem grandes problemas é o phantom, um wrapper para o phantomjs. Para utilizar é necessário ter o phantomjs instalado:
Exemplo de utilização:
Happy scrapping.
var request = require('request'); var cheerio = require('cheerio'); request({ uri: "https://www.google.pt" }, function(error, response, body) { if(response && response.statusCode && response.statusCode < 300) { var $ = cheerio.load(body); var el = $('#gbw').find('a.gb_ga'); console.log(el.attr('title')); }//if });
No entanto alguns sites estão por trás de proxies que protegem contra coisas chatas como ataques de DOS, e outras coisas, e acabam por bloquear este tipo de pedidos.
A forma que encontrei para conseguir evitar ser bloqueado é utilizar um headless browser, normalmente utilizado para testes automáticos ao UI, e assim ultrapassar essas protecções chatas.
Existem alguns módulos para nodejs no entanto alguns semi vivos, outros com problemas estranhos, o que estou a utilizar sem grandes problemas é o phantom, um wrapper para o phantomjs. Para utilizar é necessário ter o phantomjs instalado:
sudo npm install phantomjs -g
Exemplo de utilização:
var phantom = require('phantom'); var ph = false; phantom.create(function (obj) { ph.createPage(function (page) { page.open("https://www.google.pt", function(status) { if(status == "success") { page.evaluate(function () { return document.getElementsByTagName('html')[0].innerHTML; }, function(result) { var $ = cheerio.load(result); var el = $('#gbw').find('a.gb_ga'); console.log(el.attr('title')); }); }//if }); });
Happy scrapping.
quinta-feira, 11 de junho de 2015
Obter o PageID (do Facebook) através do URL de uma página - em nodejs
Andava eu a tentar obter os likes de páginas do Facebook mas a única informação que tenho disponível é o URL das mesmas, poderia fazer algo mais chato e complexo como usar a API para obter as páginas do utilizador (autenticar, obter o token de acesso com permissões para obter as páginas, listar as páginas para o utilizador escolher qual quer) mas não faz sentido para o site em questão andar com esse trabalho.
Depois de alguma pesquisa descobri que é possível obter o ID do objecto através da API, aqui fica o snippet em nodejs (a lógica aplica-se a outras linguagens):
A biblioteca que estou a utilizar é: https://github.com/Thuzi/facebook-node-sdk/
Se alguém tiver uma solução mais interessante ou elegante coloque aí nos comments.
Depois de alguma pesquisa descobri que é possível obter o ID do objecto através da API, aqui fica o snippet em nodejs (a lógica aplica-se a outras linguagens):
FB.api('/', { "id": url }, function(res) { var pageId = res.id || res.og_object.id; if(!pageId) return next({message: 'Ups, algo correu mal'}, 0); FB.api(pageId, { fields: ['likes'] }, function(res) { if(!res || res.error || !res.likes) { return next(res.error, 0); } return next(null, res.likes); }); });
A biblioteca que estou a utilizar é: https://github.com/Thuzi/facebook-node-sdk/
Se alguém tiver uma solução mais interessante ou elegante coloque aí nos comments.
quarta-feira, 10 de junho de 2015
Blogs España Monetiza tu blog
El Directorio de Blogs España aspira a ser la lista más completa de los blogs españoles.
Beneficios de hacer parte de la Red Anuncios BES
Ahora usted puede hacer más dinero con su blog. Cuando aderires a la Red Anuncios BES será añadido una barra a su blog, que contiene un banner que genera ingresos teniendo en cuenta el número de visitas. Cuanto mayor sea el número de lectores de su blog, más dinero ganará.
Beneficios de hacer parte de la Red Anuncios BES
- Monetiza tu blog
Ahora usted puede hacer más dinero con su blog. Cuando aderires a la Red Anuncios BES será añadido una barra a su blog, que contiene un banner que genera ingresos teniendo en cuenta el número de visitas. Cuanto mayor sea el número de lectores de su blog, más dinero ganará.
Assinar:
Postagens (Atom)