Statt httplib jetzt requests für Abfrage der Webseite. Code ein wenig optimiert
This commit is contained in:
parent
a964b2b5bc
commit
3458b4e227
@ -23,8 +23,6 @@ import csv
|
||||
import os
|
||||
import re
|
||||
import requests
|
||||
import httplib2
|
||||
import urllib
|
||||
import yaml
|
||||
|
||||
from datetime import datetime, timedelta
|
||||
@ -40,7 +38,7 @@ class Muell:
|
||||
|
||||
self.__host = 'api.abfall.io'
|
||||
|
||||
self.__url = f'https://{self.__host}/?key={self.__key}&modus={self.__modus}&waction=export_csv'
|
||||
self.__url = f'https://{self.__host}/?key={self.__key}&modus={self.__modus}'
|
||||
self.__export_als = f"{{'action':'{self.__url}','target':''}}"
|
||||
|
||||
self.__current_year = datetime.today().year
|
||||
@ -87,9 +85,9 @@ class Muell:
|
||||
def __start(self):
|
||||
''' Initialisiert das System und sucht entsprechende Daten heraus '''
|
||||
|
||||
url = f'https://{self.__host}/?key={self.__key}&modus={self.__modus}&waction=init'
|
||||
http = httplib2.Http()
|
||||
(resp, content) = http.request(url, "POST", headers = self.__headers, body = urllib.parse.urlencode(self.__postdata))
|
||||
url = f'{self.__url}&waction=init'
|
||||
resp = requests.post(url, data = self.__postdata, headers = self.__headers)
|
||||
content = resp.content
|
||||
|
||||
result = re.findall(r"<input .*?name=.*? value=.*?/>", str(content))
|
||||
|
||||
@ -135,18 +133,19 @@ class Muell:
|
||||
|
||||
if not antwort_liste:
|
||||
# Keine vernünftigen Daten, ergo mal gucken, was die Webseite ergibt
|
||||
self.postdata['f_id_kommune'] = config['kommune']
|
||||
self.postdata['f_id_strasse'] = config['strasse']
|
||||
self.__postdata['f_id_kommune'] = config['kommune']
|
||||
self.__postdata['f_id_strasse'] = config['strasse']
|
||||
|
||||
(name, value) = self.__start()
|
||||
if name != None and value != None:
|
||||
self.postdata[name] = value
|
||||
self.__postdata[name] = value
|
||||
|
||||
http = httplib2.Http()
|
||||
(resp, content) = http.request(self.__url, "POST", headers = self.__headers, body = urllib.parse.urlencode(self.__postdata))
|
||||
url = f'{self.__url}&waction=export_csv'
|
||||
resp = requests.post(url, data = self.__postdata, headers = self.__headers)
|
||||
content = resp.content
|
||||
|
||||
antwort = str(content)
|
||||
f = open(f'muell{self._current_year}.csv', 'wb')
|
||||
f = open(f'muell{self.__current_year}.csv', 'wb')
|
||||
f.write(content)
|
||||
f.close()
|
||||
(antwort_liste, headline) = self.__read_file(self.__current_year)
|
||||
|
||||
Loading…
Reference in New Issue
Block a user