Différences entre les versions de « Utilisateur:LenaS »

De {}
Aller à la navigation Aller à la recherche
 
(Une version intermédiaire par un autre utilisateur non affichée)
Ligne 339 : Ligne 339 :
  
 
<syntaxhighlight lang="python">
 
<syntaxhighlight lang="python">
 +
 +
 
#!/usr/bin/env python3
 
#!/usr/bin/env python3
 
# coding: utf-8
 
# coding: utf-8
Ligne 347 : Ligne 349 :
 
import time
 
import time
 
import datetime
 
import datetime
 +
import random
  
 
from urllib.request import urlopen
 
from urllib.request import urlopen
Ligne 355 : Ligne 358 :
  
 
# apiKey
 
# apiKey
 
  
 
def getLatLong(adresse, apiKey) :
 
def getLatLong(adresse, apiKey) :
Ligne 378 : Ligne 380 :
 
     getData = urlopen(tomtomURL).read()
 
     getData = urlopen(tomtomURL).read()
 
     result = json.loads(getData)
 
     result = json.loads(getData)
 +
    #print("##################calcul de route")
 +
    #print(result)
 +
    #print("##################fin calcul de route")
 
     return result['routes'][0]['guidance']['instructions']
 
     return result['routes'][0]['guidance']['instructions']
  
Ligne 385 : Ligne 390 :
 
     currentPoint = int(nbPoints/2)
 
     currentPoint = int(nbPoints/2)
  
     #print(route[currentPoint1]['point']['latitude'])
+
 
     #print(route[currentPoint1]['point']['longitude'])
+
     #print(route[currentPoint]['point']['latitude'])
 +
     #print(route[currentPoint]['point']['longitude'])
  
 
     #1 km +- = à km_lat degrés
 
     #1 km +- = à km_lat degrés
 
     km_lat = 0.0090437173295
 
     km_lat = 0.0090437173295
 
     #r correspond environ à un rayon de 25 km
 
     #r correspond environ à un rayon de 25 km
     r = 7*km_lat
+
     r = (0.1 + random.random() * 0.9 ) *km_lat
  
 
     #bouger le point
 
     #bouger le point
 
     currentPointLat = ((route[currentPoint]['point']['latitude'])+r)
 
     currentPointLat = ((route[currentPoint]['point']['latitude'])+r)
 
     currentPointLon = ((route[currentPoint]['point']['longitude'])+r)
 
     currentPointLon = ((route[currentPoint]['point']['longitude'])+r)
 +
 +
    #print(currentPointLat)
 +
    #print(currentPointLon)
  
 
     return (currentPointLat, currentPointLon)
 
     return (currentPointLat, currentPointLon)
Ligne 411 : Ligne 420 :
  
  
#etape 3
 
pointMilieu = getPointMilieu(route)
 
  
#etape 4
+
for i in range(0, 10):
route2 = getRoute(pointDepart, pointMilieu, apiKey)
+
    print("calcul de section %s" % i)
 +
 
 +
    pointMilieu = getPointMilieu(route)
 +
    route2 = getRoute(pointDepart, pointMilieu, apiKey)
 +
    print("nombre d'étapes dans cette portion: %s " % len(route2))
 +
 
 +
    if(i > 0):
 +
        del route2[0]
 +
 
 +
    del route2[-1]
 +
 
 
     #stoker trajet dans tableau
 
     #stoker trajet dans tableau
trajet.append(route2)
+
    '''
 +
    for etape in route2:
 +
        print(etape['message'])
 +
    '''
 +
 
 +
    trajet.append(route2)
 +
    #etape 5
 +
    route = getRoute(pointMilieu, pointArrivee, apiKey)
 +
    pointDepart = pointMilieu
  
#etape 5
 
route3 = getRoute(pointMilieu, pointArrivee, apiKey)
 
  
#etape 6
+
del route[0]
pointMilieu2 = getPointMilieu(route3)
+
for etape in route:
 +
    print(etape['message'])
 +
trajet.append(route)
  
#etape 7
+
print(len(trajet))
route4 = getRoute(pointMilieu, pointMilieu2, apiKey)
 
trajet.append(route4)
 
  
route5 = getRoute(pointMilieu2, pointArrivee, apiKey)
 
trajet.append(route5)
 
  
 
#etape 8
 
#etape 8
 
#le premier 0 correspond à la première portion du trajet et le deuxième au premier message de cette portion.
 
#le premier 0 correspond à la première portion du trajet et le deuxième au premier message de cette portion.
print(trajet[0][0]['message'])
+
 
 
for portion in trajet :
 
for portion in trajet :
 
     for etape in portion :
 
     for etape in portion :
 
         print (etape['message'])
 
         print (etape['message'])
 
  
 
</syntaxhighlight>
 
</syntaxhighlight>

Version actuelle datée du 25 mai 2020 à 14:04

Python

Pourquoi ne pas essayer d'inverser le premier et dernier mot de chaque phrases. Ainsi que la première et la dernière lettre du premier mot de chaque phrases.



Résultats programmes :

Les editions
m'avaient donne
un grand roman
Cest vrai ou faux
Cest nomr ou blanc
le code binaire
L ORDINATEUR
Zeros et uns
Repetition,
Saut a la ligne,
«Le Canape»
une mission :
transformiste.
un ou zero
larme amme bien
touts est tres claire
Circuits Immenses
Rythment le cod(e).
Zeros et uns
C’est un secret.
Les :
 «Le un
 ou donne
 une un editions
 Canape» grand roman
 ou
 Cest vrai m’avaient faux
 mission transformiste. zero
 Cest nomr binaire blanc
 larme amme bien
 claire code ou
 touts est tres le
 ORDINATEUR L
 et le
 Zeros Circuits uns
 et Immenses a
 la
 Zeros Rythment uns
 Saut cod(e). Repetition, un
 C’est ligne, :
Les editions
 «Le Caaouuuuunaaouuuuupe»
 m’aaouuuuuvaaouuuuuient donne
 une mission :
 un Grrrrraaouuuuund romaaouuuuun
 traaouuuuunsformiste.
 Cest vraaouuuuui ou faaouuuuuux
 un ou zero
 Cest nomr ou blaaouuuuunc
 laaouuuuurme aaouuuuumme bien
 le code binaaouuuuuire
 touts est tres claaouuuuuire
 L ORDINATEUR
 Circuits Immenses
 Zeros et uns
 Rythment le cod(e).
 Repetition,
 Zeros et uns
 Saaouuuuuut aaouuuuu laaouuuuu liGrrrrne,
 C’est un secret.
- par lena
Tu veux un lysopaine ?
oui

lEs eDiTiOnS
«lE CaAaAhNaAaAhPe»
M’AaAaHvAaAaHiEnT DoNnE
UnE MiSsIoN :
Un gRaAaAhNd rOmAaAaHn
tRaAaAhNsFoRmIsTe.
CeSt vRaAaAhI Ou fAaAaHuX
Un oU ZeRo
cEsT NoMr oU BlAaAaHnC
LaAaAhRmE AaAaHmMe bIeN
Le cOdE BiNaAaAhIrE
ToUtS EsT TrEs cLaAaAhIrE
L OrDiNaAaAhTeUr
cIrCuItS ImMeNsEs
zErOs eT UnS
RyThMeNt lE CoD(E).
RePeTiTiOn,
ZeRoS Et uNs
sAaAaHuT AaAaH LaAaAh lIgNe,
C’EsT Un sEcReT.
L!s !d!t!!ns
«L! C!n!p!»
m’!v!!!nt d!nn!
!n! m!ss!!n :
!n gr!nd r!m!n
tr!nsf!rm!st!.
C!st vr!! !! f!!x
!n !! z!r!
C!st n!mr !! bl!nc
l!rm! !mm! b!!n
l! c!d! b!n!!r!
t!!ts !st tr!s cl!!r!
L !RD!N!T!!R
C!rc!!ts !mm!ns!s
Z!r!s !t !ns
Rythm!nt l! c!d(!).
R!p!t!t!!n,
Z!r!s !t !ns
S!!t ! l! l!gn!,
C’!st !n s!cr!t.

Quel temps pourri...



Le programme exercice de vacances :

#!/usr/bin/env python
# -*- coding: utf-8 -*-
import sys
import random


a = input("Bienvenue, combien de vers voulez vous recevoir ? : ")

'''
if type(a) != int :
    print("Désolé, ce n'est pas un nombre :(")
    exit()
'''

rgv1 = int(a)
article = ["touts","Les","Le","Un", "Une", "L'", "ou"]
nom = ["Canape","transformiste","larme", "editions","mission", "roman", "secret", "circuit", "code", "ligne", "ORDINATEUR", "Repetition" "cod(e)", "saut", "zero", "Zeros", "uns"]
complement = ["amme","grand", "vrai", "faux", "noir", "blanc", "binaire", "bien", "claire", "tres", "Immenses"]
verbe = ["m'avaient", "est", "Rythment", "C'est", "donne"]

i = 0
while i < rgv1:
    résultat1 = random.choice(article)
    résultat2 = random.choice(nom)
    résultat3 = random.choice(complement)
    résultat4 = random.choice(verbe)

    str_a_rendre = résultat1 + " " + résultat2 + " " + résultat3 + " " + résultat4
    print(str_a_rendre)
    i += 1


J'ai essayer de faire que si on ne met pas un chiffre, cela écrit "désolé mais ce n'est pas un nombre", or, sur l'ordi avec lequel j'ai fais ça marchait, sur le mien plus (pour cela qu'il est en commentaire)...


Bienvenue, combien de vers voulez vous recevoir ? : 10
Un editions vrai m'avaient
Le code Immenses C'est
Le ORDINATEUR tres donne
Une larme grand donne
Les ligne bien est
Le secret vrai C'est
ou Canape grand est
Un Zeros tres m'avaient
Une mission faux m'avaient
Une saut tres donne
Bienvenue, combien de vers voulez vous recevoir ? : 15
Un editions amme donne
Une ligne blanc donne
Le roman noir C'est
ou editions claire est
Un secret amme donne
ou circuit tres C'est
Les code amme C'est
L' circuit blanc est
Une transformiste bien C'est
touts transformiste amme C'est
Une Zeros noir C'est
ou Repetitioncod(e) amme est
L' transformiste binaire donne
Les transformiste vrai m'avaient
Le secret faux C'est

BOT

Créer un bot qui publie tout seul du texte.

Idées

- Un bot qui fait se perdre dans une ville : en prenant les données google map d'une ville (possible ?), et donne des directions (droite, gauche, tout droit, nom de rue, etc.) ?? de manière aléatoire ou en suivant un chemin ?? Automatiquement toutes les ? minutes ou heures.

- Un bot qui flatte : dit des compliments. Automatiquement ou quand quelqu'un s'abonne à lui ?

- Un bot qui dit bonne nuit. Panel de mots se référant au domaine. Automatiquement à une heure précise chaque jour.

- Un bot qui compte. Automatiquement - qui compte les heures ? -. De manière infinie ?

- Un bot qui ressort des titres d'articles trouvés sur internet possédant tous un mot en commun (art ? ou autre). - pour résultats plus fou, quand les trois lettres art sont présentes, donc dans des mots aussi (ex: ARTichaut) - Lorsqu'un article sort, ou de manière automatique ?

- Un bot pas content qui manifeste : annonce "stop aux" ou "stop au" et introduit un titre d'article de fais divers trouvé sur internet, ou dans thème spécifique. De manière automatique. (peu être mal interprété ?)

- Un bot qui prend la version numérique de "la disparition" de George Perec et qui rajoute des "e" à certains endroits. Une phrase par jours ou quelques mots par jours (vue que les phrases sont très longues).



code BOT :

#!/usr/bin/env python3
# coding: utf-8

import requests
import json
import sys
import time
import datetime

from urllib.request import urlopen
from urllib.parse import quote

#créer un tableau pour stocker les trajets
trajet = []

# apiKey


def getLatLong(adresse, apiKey) :
    adresse = quote(adresse)
    apiURL      = "https://api.tomtom.com/search/2/geocode"
    tomtomURL = "{0}/{1}.json?limit=1&countrySet=BE,FR&language=fr-FR&key={2}".format(apiURL,adresse,apiKey)
    getData = urlopen(tomtomURL).read()
    result = json.loads(getData)
    lat = result['results'][0]['position']['lat']
    long = result['results'][0]['position']['lon']


def getRoute(pointA, pointB, apiKey) :
    lat1 = pointA[0]
    lon1 = pointA[1]
    lat2 = pointB[0]
    lon2 = pointB[1]
    apiURL      = "https://api.tomtom.com/routing/1/calculateRoute"
    tomtomURL = "{0}/{1}%2C{2}%3A{3}%2C{4}/json?instructionsType=text&language=fr-FR&computeBestOrder=false&routeRepresentation=summaryOnly&sectionType=pedestrian&avoid=unpavedRoads&travelMode=pedestrian&key={5}".format(apiURL,lat1,lon1,lat2,lon2,apiKey)
    getData = urlopen(tomtomURL).read()
    result3 = json.loads(getData)
    return result['routes'][0]['guidance']['instructions']


def getPointMilieu(route) :
    nbPoints = len(route)
    currentPoint = int(nbPoints/2)

    #print(route[currentPoint1]['point']['latitude'])
    #print(route[currentPoint1]['point']['longitude'])

    #1 km +- = à km_lat degrés
    km_lat = 0.0090437173295
    #r correspond environ à un rayon de 25 km
    r = 7*km_lat

    #bouger le point
    currentPointLat = ((route[currentPoint]['point']['latitude'])+r)
    currentPointLon = ((route[currentPoint]['point']['longitude'])+r)

    return (currentPointLat, currentPointLon)

#etape 1
pointDepart = getLatLong("87 rue du page, Bruxelles", apiKey)
pointArrivee = getLatLong("9 rue du métal, Bruxelles", apiKey)

#etape 2
route = getRoute(pointDepart, pointArrivee, apiKey)

print(route[0]['point']['latitude'])
#donne le nombre d epoint présent dans le tableau
print(len(route))


#etape 3
pointMilieu = getPointMilieu(route)

#etape 4
route2 = getRoute(pointDepart, pointMilieu, apiKey)
    #stoker trajet dans tableau
trajet.append(route2)

#etape 5
route3 = getRoute(pointMilieu, pointArrivee, apiKey)

#etape 6
pointMilieu2 = getPointMilieu(route3)

#etape 7
route4 = getRoute(pointMilieu, pointMilieu2, apiKey)
trajet.append(route4)

route5 = getRoute(pointMilieu2, pointArrivee, apiKey)
trajet.append(route5)

#etape 8
print(trajet[0]['route'][0]['guidance']['instruction'][0]['message'])

Version corrigée:

#!/usr/bin/env python3
# coding: utf-8

import requests
import json
import sys
import time
import datetime
import random

from urllib.request import urlopen
from urllib.parse import quote

#créer un tableau pour stocker les trajets
trajet = []

# apiKey

def getLatLong(adresse, apiKey) :
    adresse = quote(adresse)
    apiURL      = "https://api.tomtom.com/search/2/geocode"
    tomtomURL = "{0}/{1}.json?limit=1&countrySet=BE,FR&language=fr-FR&key={2}".format(apiURL,adresse,apiKey)

    getData = urlopen(tomtomURL).read()
    result = json.loads(getData)

    lat = result['results'][0]['position']['lat']
    long = result['results'][0]['position']['lon']
    return(lat, long)

def getRoute(pointA, pointB, apiKey) :
    lat1 = pointA[0]
    lon1 = pointA[1]
    lat2 = pointB[0]
    lon2 = pointB[1]
    apiURL      = "https://api.tomtom.com/routing/1/calculateRoute"
    tomtomURL = "{0}/{1}%2C{2}%3A{3}%2C{4}/json?instructionsType=text&language=fr-FR&computeBestOrder=false&routeRepresentation=summaryOnly&sectionType=pedestrian&avoid=unpavedRoads&travelMode=pedestrian&key={5}".format(apiURL,lat1,lon1,lat2,lon2,apiKey)
    getData = urlopen(tomtomURL).read()
    result = json.loads(getData)
    #print("##################calcul de route")
    #print(result)
    #print("##################fin calcul de route")
    return result['routes'][0]['guidance']['instructions']


def getPointMilieu(route) :
    nbPoints = len(route)
    currentPoint = int(nbPoints/2)


    #print(route[currentPoint]['point']['latitude'])
    #print(route[currentPoint]['point']['longitude'])

    #1 km +- = à km_lat degrés
    km_lat = 0.0090437173295
    #r correspond environ à un rayon de 25 km
    r = (0.1 + random.random() * 0.9 ) *km_lat

    #bouger le point
    currentPointLat = ((route[currentPoint]['point']['latitude'])+r)
    currentPointLon = ((route[currentPoint]['point']['longitude'])+r)

    #print(currentPointLat)
    #print(currentPointLon)

    return (currentPointLat, currentPointLon)

#etape 1
pointDepart = getLatLong("87 rue du page, Bruxelles", apiKey)
pointArrivee = getLatLong("9 rue du métal, Bruxelles", apiKey)

#etape 2
route = getRoute(pointDepart, pointArrivee, apiKey)

print(route[0]['point']['latitude'])
#donne le nombre d epoint présent dans le tableau
print(len(route))



for i in range(0, 10):
    print("calcul de section %s" % i)

    pointMilieu = getPointMilieu(route)
    route2 = getRoute(pointDepart, pointMilieu, apiKey)
    print("nombre d'étapes dans cette portion: %s " % len(route2))

    if(i > 0):
        del route2[0]

    del route2[-1]

    #stoker trajet dans tableau
    '''
    for etape in route2:
        print(etape['message'])
    '''

    trajet.append(route2)
    #etape 5
    route = getRoute(pointMilieu, pointArrivee, apiKey)
    pointDepart = pointMilieu


del route[0]
for etape in route:
    print(etape['message'])
trajet.append(route)

print(len(trajet))


#etape 8
#le premier 0 correspond à la première portion du trajet et le deuxième au premier message de cette portion.

for portion in trajet :
    for etape in portion :
        print (etape['message'])

Lister les messages qui citent l'utilisateur

tweets = tweepy.Cursor(api.search, q='@par_labas', tweet_mode='extended').items(10)
for tweet in tweets:
    print(tweet.full_text)

OU

tweets = api.mentions_timeline()
for tweet in tweets:
    print(tweet.created_at)
    print(tweet.user.screen_name)
    print(tweet.full_text)


Récupérer les messages et l'adresse

#!/usr/bin/env python3
# coding: utf-8

from accès import *
import tweepy
import time
import parser

def saveTweetMoment(moment):
    file = open("execution.txt", "w")
    file.write(moment)
    file.close()


auth = tweepy.OAuthHandler(consumer_key, consumer_secret)
auth.set_access_token(access_token, access_token_secret)

api = tweepy.API(auth)


tweets = api.mentions_timeline(tweet_mode='extended')

tweetATraiter = False

file = open("execution.txt", "r")
dernierMomentTweet = file.read()

for tweet in tweets:
    #vérifier si ce tweet a déjà été traité
    if(str(tweet.created_at) == dernierMomentTweet):
        #si c'est le cas, alors on quitte la boucle
        break
    #si ce n'est pas le cas
    tweetATraiter = tweet

    print(tweet.created_at)
    print(tweet.user.screen_name)
    print(tweet.full_text)




#si la variable tweetAtraiter est égale à False alors on n'a rien à traiter
if(tweetATraiter == False):
    exit()

#sinon on doit commencer le traitement
print(tweetATraiter.full_text)

adresses = tweetATraiter.full_text.split('à')

adresses[0] = adresses[0].replace('@par_labas\nDe ', '')

if(len(adresses) != 2):
    print("problème: le tweet n'est pas compatible")
    saveTweetMoment(str(tweetATraiter.created_at))
    exit()


####ICI on a deux adresses à envoyer à TomTom
print("adresse de départ:"+adresses[0])
print("adresse d'arrivée:"+adresses[1])

saveTweetMoment(str(tweetATraiter.created_at))


Changer le texte en image

#!/usr/bin/env python3
# coding: utf-8
'''
from PIL import Image, ImageDraw, ImageFont
'''

img = Image.new('RGB', (200, 100))
d = ImageDraw.Draw(img)
d.text((20, 20), 'Hello', fill=(255, 0, 0))


text_width, text_height = d.textsize('Hello')

img = Image.new('RGB', (200, 100), (255, 255, 255))


import io
s = io.BytesIO()
img.save(s, 'png')
in_memory_file = s.getvalue()


Combien de boucle a faire (essai)

#faire une boucle pour demander combien de fois l'on veut calculer le trajet

print("Combien de fois tu veux te perdre?")
i = raw_input()
for i in range(0, i) :
    getRoute