Je voudrais gratter la liste de discussion d'un groupe google privé. C'est une liste de plusieurs pages et je pourrais avoir à le faire plus tard, donc les scripts semblent être la bonne façon de procéder.Comment gratter un groupe _private_ google?
Puisqu'il s'agit d'un groupe privé, je dois d'abord me connecter à mon compte google. Malheureusement, je n'arrive pas à me connecter en utilisant wget ou ruby Net :: HTTP. Étonnamment google groups n'est pas accessible avec le Client Login interface, donc tous les exemples de code sont inutiles.
Mon script ruby est intégré à la fin de la publication. La réponse à la requête d'authentification est un 200-OK mais pas de cookies dans les en-têtes de réponse et le corps contient le message "La fonctionnalité de cookie de votre navigateur est désactivée. Veuillez l'activer."
J'ai obtenu la même sortie avec wget. Voir le script bash à la fin de ce message.
Je ne sais pas comment contourner ce problème. est-ce que je manque quelque chose? Une idée?
Merci d'avance.
John
Voici le script Ruby:
# a ruby script
require 'net/https'
http = Net::HTTP.new('www.google.com', 443)
http.use_ssl = true
path = '/accounts/ServiceLoginAuth'
email='[email protected]'
password='topsecret'
# form inputs from the login page
data = "Email=#{email}&Passwd=#{password}&dsh=7379491738180116079&GALX=irvvmW0Z-zI"
headers = { 'Content-Type' => 'application/x-www-form-urlencoded',
'user-agent' => "Mozilla/5.0 (Windows; U; Windows NT 6.1; en-US) AppleWebKit/533.2 (KHTML, like Gecko) Chrome/6.0"}
# Post the request and print out the response to retrieve our authentication token
resp, data = http.post(path, data, headers)
puts resp
resp.each {|h, v| puts h+'='+v}
#warning: peer certificate won't be verified in this SSL session
Voici le script bash:
# A bash script for wget
CMD=""
CMD="$CMD --keep-session-cookies --save-cookies cookies.tmp"
CMD="$CMD --no-check-certificate"
CMD="$CMD --post-data='[email protected]&Passwd=topsecret&dsh=-8408553335275857936&GALX=irvvmW0Z-zI'"
CMD="$CMD --user-agent='Mozilla'"
CMD="$CMD https://www.google.com/accounts/ServiceLoginAuth"
echo $CMD
wget $CMD
wget --load-cookies="cookies.tmp" http://groups.google.com/group/mygroup/topics?tsc=2
Salut systempuntoout, merci pour votre réponse. Je ne savais pas mécaniser. J'ai réussi à me connecter et à gratter quelques pages, donc c'est génial. Je partagerai le script plus tard. Merci encore, John – John
@John: combien plus tard? :-) –
merci pour ce lien! vous pouvez surfer sur le web avec irb et un objet mécanisé! – grinch