Resolvi colocar um exemplo para demonstrar o funcionamento
do decorador @classmethod. Como se pode ver na execução,
nesse código, após chamar o método unpack, é criado um novo
objeto do tipo MinhaClasse.


#!/usr/bin/python
# -*- coding: utf-8 -*-

class MinhaClasse:
    def __init__(self, raw, prev):
        print ("Criando a classe MinhaClasse")
        self.raw = raw
        self.prev = prev

    #Método estático unpack
    @classmethod
    def unpack(cls, raw, prev=None):
        print ("Tipo='%s' com o raw='%s' e prev='%s'" % (cls.__name__, raw, prev))
        return cls(raw=raw, prev=prev)

if __name__ == '__main__':
    MinhaClasse.unpack("raw content", "prev content") #Não precisa de instância, o método é chamado como o nome da classe
    #Não precisa informar o valor de cls porque implicitamente ele sabe que deve ser passado o tipo da classe, ou seja "MinhaClasse"

Rodrigo Lira,

Um amigo me perguntou se eu sabia fazer a conversão de docs para PDF de forma automatizada no Linux. Eu disse que não mas que podia dar uma pesquisada rapidamente e fazer algo com shell script. Depois de ler algumas páginas do stack overflow e testar diversas formas de fazer a exportação para PDF, eu encontrei o que me pareceu mais legal. A utilização do libreoffice através da linha de comando.

O resultado foi o seguinte:

doc2PDF.sh


#!/bin/bash
#Author: Rodrigo Lira  

EXCLUDE=".pdf|.sh"

TODAY=`date +'%Y%m%d'`
files=`find . | egrep -v "$EXCLUDE"`

echo $files

if [ ! -z "$files" ] 

then	
	for file in $files
	do
#		name=`echo "$file" | awk -F "." '{ print $2 }'`
		echo "Converting $file"
        soffice --headless --convert-to pdf $file
	done

fi

Para minha surpresa, ele disse que na verdade o problema era transformar código fonte, ou seja arquivos de texto para PDF.
Refiz rapidamente o código para utilizar duas outras ferramentas: o enscript e o ps2pdf. O resultado foi o seguinte:

txt2PDF.sh


#!/bin/bash
#Author: Rodrigo Lira  

INCLUDE=".c$|.sh$|.java"

TODAY=`date +'%Y%m%d'`
files=`find . | egrep "$INCLUDE"`

echo $files

if [ ! -z "$files" ] 

then	
	for file in $files
	do
		name=`echo "$file" | awk -F "." '{ print $2 }'`
		echo "Converting $file"
        #soffice --headless --convert-to pdf $file
        enscript -p .${name}.ps ${file}
        ps2pdf .${name}.ps .${name}.pdf
        rm .${name}.ps
	done

fi

Em ambos, o script apenas convertem os arquivos que estão na mesma pasta dele, mas isso pode ser facilmente modificado.

Rodrigo Lira,

Como eu disse recentemente,  caminhos relativos costumam dar dor de cabeça quando se está trabalhando com CronJobs. Já fui surpreendido algumas vezes com erros devido a isso. Por isso, eu sempre uso a estratégia de pegar o caminho do script que estou executando e concatenar ao caminho relativo que desejo usar.  Anteriormente, eu mostrei como fazer isso em Shell Script e agora estou postando o que faço nos meus scritps em Python.

from os import path

CURR_PATH = path.dirname(path.realpath(__file__))

print CURR_PATH

Rodrigo Lira,

Blue Eyes

Today, I wont talk about tech. I will talk about a interesting brazilian movie which I watched yesterday. Indeed, it is a movie with americans and brazilian actors. Its name is “Olhos Azuis” (Blue Eyes).  Yesterday was a busy day and I was relaxing in front TV while I was waitin’ fall asleep to rest a little but instead of that, I watched that movie. It is a story about the US immigration officer who travel to Pernambuco to find a little girl, an foreing daughter. I don’t want to say spoilers about the movie but it is pretty cool. Actually, Pernambuco is my state so it was an attractive a more and the brazilian guy, I mean the main actor is from here.

RL

 

 

 

Um amigo meu apresentou-me um app bem interessante pra quem precisa organizar tarefas. O nome do aplicativo é Asana.

O aplicativo é gratuito para até 15 pessoas no projeto. Ele permite o gerenciamento de atividades de forma bem simples. Hoje, eu o utilizo para gerenciar minhas atividades no mestrado e em projetos pessoais. Ahh e ele ainda possui uma versão pra Android!

https://asana.com/

 

RL

Often I have to download mail attachments to save the data.  It is a monkey job but It must to be done. Thank god I found a
app to solve this problem. I’m not expert but this app solve all my needs. I just enter with my password and my username and
booom! It’s all done. It’s simple. If you need downloadattachment, I guess you found out the solution. Take a look!

http://gearmage.com/maildownloader.html

 

Mail Attachment Downloader