• Revista PROGRAMAR: Já está disponível a edição #53 da revista programar. Faz já o download aqui!

Tharis

[Python] Karma 4 All

3 mensagens neste tópico

# P@P Karma 4 All

# Este script foi feito por mim
# (Tharis) porque sou contra o
# sistema de karma.

# Nao quero de qualquer maneira
# criar controversia nem mal-estar
# na comunidade

# Nao estou a ir contra qualquer
# regra do forum

# Quem quiser usar o script, que use
# quem nao, que nao faca posts a e
# passe 'a frente

import mechanize

b=mechanize.Browser() # Criar o nosso browser
b.open("http://www.portugal-a-programar.org/forum/index.php?action=login") # Abrir a pagina de login
b.select_form(nr=0) # Seleccionar a form de login
b["user"]= # User entre aspas. Ex.: "johnny"
b["passwrd"]= # Password entre aspas. Ex.: "abcdef"
b.submit() # Submeter dados

pg=b.open("http://www.portugal-a-programar.org/forum/index.php?action=recent") # Abrir os ultimos posts
source=pg.read() # Source da pagina

resp=[] # Array que vai receber as ultimas respostas
for i in range(0,len(source)):
    if (source[i:i+3]=="Re:"): resp.append(i) # Re: indica resposta

links=[] # Array que vai ficar com links
for i in resp:
    start=i-3
    while True: # Procurar o Link
        if (source[start:start+2]=='="'): break
        start-=1
    links.append(source[start+2:i-2]) # Adicionar o link

print "Got last post links"

karmas=[] # Array com links de karmas
for page in links: # Percorrer cada pagina
    pg=b.open(page) # Abrir a pagina do post
    source=pg.read() # Source da pagina do post
    for i in range(0,len(source)):
        if source[i:i+3]=="[+]": # Karma +1 encontrado
            start=i-3
            while True:
                if (source[start:start+2]=='="'): break
                start-=1
            karmas.append(source[start+2:i-2]) # Link do karma

print "Got karma's links"

for karma in karmas: # Abrir cada link de +1 karma
    b.open(karma)

print "DONE!"

A administração/moderação só está contra letras vermelhas, com bold e a 30pt. :P Bons posts. :)

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Crie uma conta ou ligue-se para comentar

Só membros podem comentar

Criar nova conta

Registe para ter uma conta na nossa comunidade. É fácil!


Registar nova conta

Entra

Já tem conta? Inicie sessão aqui.


Entrar Agora