예제 #1
0
 def __init__(self, id, pwd, arret):
     self.url = "http://opendata.cts-strasbourg.fr/webservice_v4/Service.asmx"
     self.dt = dateConv.DateConv()
     # xpath : //*[@id="bi-bloc-08TCR4BC0001"]/div[2]/header/div[1]/div/h2
     self.headers = {'content-type': 'text/xml'}
     self.body1 = """<soap:Envelope xmlns:soap="http://www.w3.org/2003/05/soap-envelope" xmlns:cts="http://www.cts-strasbourg.fr/">
         <soap:Header>
             <cts:CredentialHeader>
                 <!--Optional:-->
                 <cts:ID>{id}</cts:ID>
                 <!--Optional:-->
                 <cts:MDP>{pwd}</cts:MDP>
             </cts:CredentialHeader>
         </soap:Header>
         <soap:Body>
             <cts:rechercheProchainesArriveesWeb>
                 <!--Optional:-->
                 <cts:CodeArret>{arret}</cts:CodeArret>
                 <cts:Mode>2</cts:Mode>
                 <!--Optional:-->
                 <cts:Heure>""".format(id=id, pwd=pwd, arret=arret)
     self.body2 = """</cts:Heure>
             <cts:NbHoraires>3</cts:NbHoraires>
         </cts:rechercheProchainesArriveesWeb>
     </soap:Body>
     </soap:Envelope>"""
     self.tree = None
     self.ret = None
예제 #2
0
파일: menuSteClo.py 프로젝트: eme2/Mirroir
    def load(self):
        dt = dateConv.DateConv()
        self.jourSem = dt.jourSem()
        print("Jour de la semaine : ", self.jourSem)
        if self.jourSem > 5:         # le WE on affiche le menu du lundi
            self.sem = str(dt.numSem()+1)
            self.jourSem = 1
        else:
            d = datetime.datetime.now()
            if d.hour > 12:
                self.jourSem += 1
            self.sem = str(dt.numSem())

        self.sem= "0"+self.sem
        self.sem = self.sem[-2:]
        url = "http://www.macantineetmoi.com/images/menu/sainte-clotilde/sainte-clotilde_S"+self.sem+".jpg"
        file_name = "menu.jpg"
        print("Recuperation de ", url)
        headers = { 'Accept':'text/html', 'Accept-Encoding': '', 'User-Agent': None } 
        try:
            self.resp = requests.get(url, headers= headers, timeout=10)
        except:
            self.ret = -1
            return
        self.ret = self.resp.status_code
        print("Apres requests ", self.ret)
        j=0
        if self.ret == requests.codes.ok:
            with iopen(file_name, 'wb') as file:
                for chunk in self.resp.iter_content(1024):
                    #print("> ", j)
                    j = j+1
                    file.write(chunk)
                file.close()
        print("Terminé ")
예제 #3
0
  def load(self):
    self.menus = []
    d = dateConv.DateConv()
    headers = { 'Accept':'text/html', 'Accept-Encoding': '', 'User-Agent': None }
    try: 
      requete = requests.get(self.url+d.dateJourApi(), headers=headers, timeout=10)
    except:
      return
    page = requete.content
    self.soup = BeautifulSoup(page, 'html.parser')
    dateMenu = self.soup.find('span', attrs={"class":"subtitle"})
    self.menus.append("menu du {}".format(dateMenu.text))
    d = self.soup.find(class_="dish-name")
    f = self.soup.findAll('ul', attrs={"class":"dishes-list"})

    for i in range(len(f)):
      transition = f[i].findAll('a')
    
      for j in range(len(transition)):
        menu = transition[j].find('span', attrs={"class":"intitule"})
        prix = transition[j].find('span', attrs={"class":"dish-price"})
        self.menus.append("{} - {}".format(menu.text, prix.text))
예제 #4
0
파일: mail.py 프로젝트: eme2/Mirroir
    msg = msg + s + "\n"


msg = ""
deb = time.time()
menuPhil = menuCantine.MenuCantine()
menuPhil.load()

tempExt = thing.Thing(keyPiscine, 1)
portail = thing.Thing(keyPortail, 1)
tempExt.load()
portail.load()
m = openWeather.OWM(meteoKey)
m.load("real")  # pas en mode demo
m.analyse()
dt = dateConv.DateConv()

bus = cts.Cts(idCts, pwdCts, arretCts)
bus.load()

addMsg(dt.nowStr())
addMsg(dt.heure())

derMesure = tempExt.getField(0, "created_at")
dtIso = dt.dateFromISO(derMesure)
diff = dt.nowUTC() - dtIso
addMsg("il fait {}° (il y a {} min)".format(
    float(tempExt.getField(0, "field1")),
    int(diff.total_seconds()) // 60))
addMsg("piscine à {}°".format(float(tempExt.getField(0, "field2"))))
addMsg("------------------")