Qu'entendez vous par là? On doit pouvoir écrire çà. Maintenant, si on code c'est pour résoudre un problème pas pour juste écrire des lignes pour voir.
On peut imaginer ce que pourrait vouloir dire exécuter des instructions mais un lien?
- W
Version imprimable
Qu'entendez vous par là? On doit pouvoir écrire çà. Maintenant, si on code c'est pour résoudre un problème pas pour juste écrire des lignes pour voir.
On peut imaginer ce que pourrait vouloir dire exécuter des instructions mais un lien?
- W
Je voudrais que l’on rentre la valeur de a et b et que le while fonctionne.
Car en écrivant comme ceci, ça ne fonctionne pas, il faut que l’une des deux lettres soit remplacée par un chiffre..
Je voudrais lire un lien, comme le fait très bien webbrowser mais je ne veux pas que le navigateur s'ouvre, de même, je veux que la connexion précédente soit prise en compte pour lire ce lien.
Merci beaucoup pour votre aide encore une fois !
Cordialement.
Si Python ne vous retourne pas un SyntaxError, çà fonctionne.
Après çà ne fait peut être pas ce que vous voulez, mais je ne suis pas dans votre tête alors si vous ne prenez pas la peine de l'écrire et de poster un exemple fonctionnel... Je ne vais pas l'inventer.
Certes mais il n'y a rien dans votre code qui essai de faire çà. Après vous pouvez toujours dire "je voudrais"... moi je n'essaierai de vous aider qu'à partir du moment où vous avez essayé de comprendre ce qu'est HTTP et de coder quelque chose.
- W
Le premier problème est résolu, merci :)
Voici mon code:
Mais je sais très bien que cela ouvre le navigateur, or ce n'est pas ce que je veux, je veux que le lien soit lu sans ouvrir le navigateur.Code:
1
2
3
4
5 webbrowser.open("https://www.site_a_entrer.com/?a=voterdoll&pseudo=pseudo_a_entrer") webbrowser.open("https://www.site_a_entrer.com/?a=voterloft&pseudo=pseudo_a_entrer") print "..."
J'ai donc fais plusieurs recherches sur internet et j'ai trouvé qu'apparemmentWebrequest faisait l'affaire, mais je n'en sais pas plus, sauriez-vous ?
Après, peut-être que UrlOpener peut le faire, je ne sais pas :/
Encore merci pour votre aide,
Cordialement.
Bonjour
Pourquoi n'effectuez vous pas une requête get ou post sur le lien ce serait plus simple
voir requests
Bon il manque certains détails dans l'exemple du site mais vous n'aurez qu'à rajouter
Code:
1
2
3
4
5
6
7
8
9
10 #!/usr/bin/env python3 import requests data = { 'a': 'quelquechose', 'pseudo': 'pseudo' } rep = requests.get(url, data=data)
Petite info apres lecture du titre, cela est impossible d'exécuter un lien
- B
Salut,
S'il y avait une erreur côté Python ou requête, la bibliothèque urllib2 devrait remonter une exception. Le problème est "ailleurs".
- W
Je n'y ai pas pensé plus tôt, mais cela concerne la connexion sur site à partir d'un pseudo et d'un mot de passe ou la lecture d'un lien ? Ou les deux ?
Je ne vois pas d'où pourrait venir le problème alors.. :/
Voici mon code:
Je rappelle simplement, que pour que la lien soit "lu", autrement dit, que l'action du lien fonctionne (pas très clair, désolé..), il faut que la connexion soit prise en compte.Code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51 # -*- coding: cp1252 -*- import cookielib, urllib, urllib2, webbrowser, time b = 1 #numero du vote c = raw_input("Nombre de votes:") d = int("2") * int(c) while b <= c : #tant que numero de vote inferieur ou egal a 10 a=0 #ligne 1 du document texte while a <= d : f = open("fichier_texte.txt",'r') #ouvrir document texte pseudo = f.readlines()[a] #lire ligne a du document texte pseudo = pseudo.replace('\n', '') #supprimer les espaces f.close() #fermer document texte print pseudo #afficher le pseudo f = open("fichier_texte.txt",'r') #ouvrir document texte passwrd = f.readlines()[a+1] #lire ligne a+1 du document texte passwrd = passwrd.replace('\n', '') #supprimer les espaces f.close() #fermer document texte print passwrd #afficher le mot de passe # Enable cookie support for urllib2 cookiejar = cookielib.CookieJar() urlOpener = urllib2.build_opener(urllib2.HTTPCookieProcessor(cookiejar)) # Send login/password to the site and get the session cookie values = {'pseudo':pseudo, 'pass':passwrd } data = urllib.urlencode(values) request = urllib2.Request("https://www.site_a_entrer.com/index.php?a=login", data) url = urlOpener.open(request) # Our cookiejar automatically receives the cookies page = url.read(10000) print(request) print "...", pseudo, "est connectée !" req = urllib2.Request(url="https://www.site_a_entrer.com/?a=voterdoll&pseudo=pseudo_a_entrer") f = urllib2.urlopen(req) print f.read() print "VOTE" time.sleep(6) a= a+2 b = b+1 input("...")
"L'action du lien" ne se fait pas là enfaîte..
Cordialement
Salut,
Poster du code n'a d'intérêt que si on peut l'exécuter pour reproduire quelque chose. D'autant que si le problème n'est pas dans le code, il est sans doute dans le dialogue entre le code et le serveur (ce qu'on appelle protocole) qui peut être spécifique au serveur et qu'on ne va pas inventer.
- W
Lire le forum de newbiecontest, qui concerne ce challenge ?
Cela équivaut a faire https://www.site_a_entrer.com/?a=vot...seudo_a_entrer
Pouvez vous me donner le site afin que je teste pour rajouter les cookies?
C'est bien ça le problème, je viens de vérifier avec un autre lien, qui lui fonctionne avec ce codage:
Donc, est-ce au moins possible de résoudre le problème ? Est-ce réalisable ?Code:
1
2
3
4
5
6
7
8
9
10 import urllib2 req = urllib2.Request(url="lien_a_lire") f = urllib2.urlopen(req) print f.read() print "VOTE" input("...")
Peut-on quand même lire le lien d'une autre manière, même avec ce problème ?
Merci beaucoup d'avance pour votre aide, c'est la dernière étape de mon projet.. :)
Cordialement.
C'est réalisable pour autant qu'on connaisse le protocole (i.e. les échanges à effectuer) utilisé par le serveur... Et je vous ai déjà dit que 1 on ne peut pas l'inventer et 2. c'est pas un sujet Python (au sens ou vous auriez le même soucis avec un autre langage).
- W