Korben, roi d’internet, logo bébé avec des lunettes en mode thug life Korben, roi d’internet, logo bébé avec des lunettes en mode thug life

Korben Upgrade your mind

RoboBrowser – Une bibliothèque Python pour scraper et faire surfer votre code

Si vous voulez simuler une présence humaine sur le web, oubliez les macros qui squattent votre clavier et votre souris et passez à RoboBrowser. Cette bibliothèque Python permet d’aller sur la page web de votre choix, remplir des formulaires, les soumettre, récupérer des contenus ou cliquer sur des liens. C’est un scraper avec des notions de navigation web un peu plus poussées.

Alors oui effectivement, cela peut servir à des spammeurs de commentaires, mais je pense que les mecs ne m’ont pas attendu. Par contre, ce qui est cool, c’est que si vous développez vous-même vos outils et que vous vous connectez à des plateformes extérieures qui n’ont pas d’API, il est parfaitement envisageable grâce à RoboBrowser, d’intégrer ces plateformes dans vos workflows.

Voici un exemple de code où RoboBrowser est utilisé pour récupérer les paroles d’une chanson :

import re
from robobrowser import RoboBrowser

# Browse to Genius
browser = RoboBrowser(history=True)
browser.open('http://genius.com/')

# Search for Porcupine Tree
form = browser.get_form(action='/search')
form                # <RoboForm q=>
form['q'].value = 'porcupine tree'
browser.submit_form(form)

# Look up the first song
songs = browser.select('.song_link')
browser.follow_link(songs[0])
lyrics = browser.select('.lyrics')
lyrics[0].text      # nHear the sound of music ...

# Back to results page
browser.back()

# Look up my favorite song
song_link = browser.get_link('trains')
browser.follow_link(song_link)

# Can also search HTML using regex patterns
lyrics = browser.find(class_=re.compile(r'blyricsb'))
lyrics.text         # nTrain set and match spied under the blind...

Et voici un autre exemple ou RoboBrowser est utilisé pour remplir un formulaire :

from robobrowser import RoboBrowser
browser = RoboBrowser()
browser.open('http://twitter.com')

# Get the signup form
signup_form = browser.get_form(class_='signup')
signup_form         # <RoboForm user[name]=, user[email]=, ...

# Inspect its values
signup_form['authenticity_token'].value     # 6d03597 ...

# Fill it out
signup_form['user[name]'].value = 'python-robot'
signup_form['user[user_password]'].value = 'secret'

# Submit the form
browser.submit_form(signup_form)

 


Réponses notables

  1. Pour ma part, j’utilise CasperJS (nécessite PhantomJS).

    Il est très puissant et permet de généré des images de la page capturé.

  2. J4N says:

    Si ca intéresse, il y a un très bon équivalent en .Net: ScrapySharp

  3. Rien à voir mais +1 pour le mec qui a cherché les paroles de “Trains” de Porcupine Tree :slight_smile:

Continuer la discussion sur Korben Communauté

2 commentaires supplémentaires dans les réponses

Participants

Installer le shell Bash (Linux) sous Windows 10

L’année dernière, ça ne vous a pas échappé, Bash a fait son apparition sous Windows 10. C’est pour moi, la meilleure chose qui soit arrivée à Windows depuis un moment, car ça permet de lancer des outils Linux et de développer ses propres scripts Shell directement sous Windows. Le pied !

Mais même si c’est parfaitement fonctionnel, il faut quand même…

Lire la suite


Plus de 60 idées pour votre Raspberry Pi

Nous sommes nombreux à nous être procuré un petit ordinateur Raspberry Pi pour nous lancer dans des projets de ouf malade… C’est très cool, mais à part le classique Media Center XBMC, qu’avez-vous fait avec votre Raspberry Pi ?

Si vous séchez niveau idées, voici une petite sélection…

Lire la suite


Une astuce pour rendre Windows 10 plus rapide

Si vous trouvez que Windows 10 est un peu lent, que vos applications ne se lancent pas très vite, que vos compilations prennent du temps, voici une petite astuce débusquée par Brominou pour accélérer le bouzin.

Cliquez dans la zone de recherche de la barre Windows et tapez le mot clé « Performances ». Puis cliquez sur « Régler l’apparence et les performances de Windows » …

Lire la suite


Changer d’adresse IP rapidement

Une petite astuce pour ceux qui ne connaissent pas. Comment changer d’adresse IP à la volée.
Il suffit d’en demander une nouvelle à son provider si celui-ci accepte les IP dynamiques. Pour vérifier que vos manipulation ont eu l’effet escompté, vérifiez quelle est votre adresse IP….

Lire la suite