2017-12-23 4 views
0

Ich habe die folgende Funktion, die eine Anfrage an eine URL abruft.Warum gibt diese Anfrage eine leere Zeichenfolge zurück?

def fetch_data(session = None): 
    s = session or requests.Session() 
    url = 'http://www.moldelectrica.md/utils/load4.php' 
    response = s.get(url) 
    print response.status_code 
    data = response.text 
    return data 

Ich erwarte, eine Zeichenfolge zurück in das Formular zu bekommen.

169,26,0,19,36,151,9,647,26,15,0,0,0,0,0,150,7,27, -11, -27, -101, -19, -32, - 78, -58,0,962,866,96,0,50.02

Aber stattdessen bekomme ich eine leere Unicode-Zeichenfolge. Der zurückgegebene Statuscode ist 200.

Ich habe mir die Anforderungsheader angeschaut, aber nichts in ihnen schlägt vor, dass Header manuell gesetzt werden müssen. Cookies werden verwendet, aber ich denke, das Session-Objekt sollte damit umgehen.

+0

Die Seite ist leer, wenn ich mit einem Browser auf die URL zugreife. Gibt es einen Grund, warum Sie erwarten, dass es Daten enthält? – JJJ

+0

Ist das deine Site ... die URL hat keinen Inhalt für mich zurückgesendet ... wenn es ... URE PHP Code – Ctznkane525

+0

ist nicht meine Site, diese URL wird von einer anderen Seite auf der Site aufgerufen und liefert Daten für eine Anzeige. Ich benutze Firefox und sehe eine Zeichenfolge wie 73,20,0,19,36,154,9,523,18,8,0,0,0,0,0,176,8,27, -6,27, -50, -17 , -27, -69, -51,0,884,746,138,0,50.00 – Chris

Antwort

0

Ich habe es herausgefunden. Wie gesagt, diese URL liefert Daten für eine Anzeige, so dass sie normalerweise nicht direkt besucht werden würde. Normalerweise würde dies von der Anzeigeseite angefordert und diese Seite würde einen Cookie bereitstellen.

Also die Lösung besteht darin, eine Anfrage an die Display-URL zu machen, dann die Sitzung wiederzuverwenden und eine weitere Anfrage an die Daten-URL zu stellen.

Verwandte Themen