Quais são os melhores scripts Python que você já escreveu?
Eu sou um engenheiro informático com 15 anos de experiência. Eu criei vários scripts python (semelhantes a muitos scripts já descritos) para tarefas de uso diário.No entanto o meu melhor script python seria a automação facebook. A configuração inclui um driver selênio no firefox.
O script é acionado uma vez a cada 6 horas em um computador dedicado. Os scripts abrem o navegador web e faz login com a minha conta.
Algumas coisas que ele pode fazer são listadas:
- Parse minha lista completa de amigos e crie um xml com todos os detalhes relevantes. (Isto é importante já que os passos posteriores só tomam ação em feeds das pessoas neste xml criado.)
- Desejar aniversário aos amigos. Ele pega uma mensagem aleatória de um pool fixo e deseja-lhes no aniversário.
- Releciona a feedpage e toma ações em feeds individuais.
- Pode gostar das fotos/posts se algumas pré-condições forem satisfeitas. Por exemplo, uma pré-condição é que a foto deve ser carregada diretamente e não compartilhada do feed de outra pessoa.
- Por padrão, ela vai gostar de qualquer foto / mudança de foto da capa.
- Se outras pessoas parabenizarem pelo aniversário, ela pode analisar o comentário, como o feed e a mensagem de parabéns pelo aniversário do pool de mensagens de aniversário.
- Se outras pessoas parabenizarem meu amigo, ela pode analisar o comentário, como o feed e a mensagem de parabéns pelo aniversário.
- Se alguém compartilha um post para um evento específico (como viajar, fazer checkin em algum lugar ou correr com rastreadores de atividades) então é automaticamente gostado.
Sou anônimo porque provavelmente é contra as políticas do Facebook usar este tipo de scripts para interação diária.
EDIT 1:
Esta seção de edição é para pessoas que estão interessadas em saber como o script inteiro funciona. Vou tentar mantê-lo mínimo para que não se torne muito técnico.
O script tem 3 áreas principais de trabalho:
- Navigation : Navegar para uma página web, rolar a página, etc.>li>Recolha de informações : Recolha as informações de elementos específicos na página web e guarde-as em estruturas locais>li>Acção : Faça alguma acção sobre elementos específicos com base nas informações recolhidas.
Controlador deelenium dá a capacidade directa de lançar um browser, navegar para uma url , rolar para baixo, etc. Portanto, esta parte é bastante direta.
Recolha de informações
Esta é uma das partes mais difíceis. No firefox você pode clicar com o botão direito do mouse em qualquer elemento e inspecioná-lo. "Inspect Element" dá detalhes de como é o código html de um elemento
Aqui está um instantâneo do que o firefox mostra quando eu inspeciono o nome de um amigo na minha lista de amigos.
A classe do elemento "div" é muito importante. Agora sei que sempre que vou analisar um elemento desta classe , ele terá os detalhes do meu amigo (nome , url etc )
Primeiro encontro estes elementos manualmente e depois os codifico no meu script.
Posso agora analisar os elementos necessários e coletar as informações presentes naqueles via selênio. O selênio dá as api's para extrair cada informação de um elemento. Por exemplo, eu posso extrair o "href" na imagem acima e posso salvar a url do meu amigo.
Este exemplo também cobre o primeiro ponto do meu script de como eu criei o xml de todos os meus amigos. Eu preciso analisar a lista de meus amigos apenas uma vez e salvá-la para uso futuro até eu adicionar/remover um amigo.
De maneira similar nós podemos analisar os comentários/contagem de eventos de aniversário etc .
Ação
Após termos coletado as informações que podemos aplicar nossa própria lógica de programação a essas informações. Por exemplo, se alguém comentou "Boa imagem" podemos postar um comentário semelhante.
Selenium fornece as api's para clicar no elemento/tipo em uma área de texto, etc. So for like we simply click on “Like” element with that specific class.
That’s all folks.