2016-04-07 4 views
-1

Gibt es eine Möglichkeit, den User-Agent und globale IP in bestimmten JSON-Format zu finden? Hilf mir dabei. Hier ist, was ich versuche Teilerfolg bei der Beschaffung von globalen IP, aber keine Informationen über User-Agent.Finden Sie den User-Agent und die globale IP-Adresse von der Verwendung von Python

import requests, json 
r = requests.get('http://httpbin.org/ip').json() 
print r['origin'] 

Der obige Code gibt mir die globale IP zurück, aber ich möchte einige Informationen darüber, auf welcher Plattform ich mit der bestimmten URL verbunden bin. Z.B. 'Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/49.0.2623.110 Safari/537.36'.

+0

Könnten Sie bitte weitere Informationen (im Detail) zur Verfügung stellen? Was ist die Quelle? –

+0

Was definieren Sie als "globale IP"? Sie wollen "Plattforminformationen" * von wem * bekommen? Ist Ihr Code in diesem Szenario ein Server oder ein Client? – deceze

Antwort

0

Betrachtet man ein JSON-Objekt als String hat (möglicherweise aus einer Datei lesen?) Möchten Sie zuerst wollen convert that into a Python dictionary object

import json 
request_details = json.loads('{"user-agent": "Chrome", "remote_address": "64.10.1.1"}') 
print request_details["user-agent"] 
print request_details["remote_address"] 

ODER

Wenn Sie über einen Antrag sprechen, die auf den Server kommen Der Benutzeragent ist Teil der Anforderungsheader und remote_address wird später in der Netzwerkschicht hinzugefügt. Verschiedene Web-Frameworks haben unterschiedliche Möglichkeiten, auf diese Werte zuzugreifen. Zum Beispiel Django können Sie von HttpRequest.META Wörterbuch zugreifen. Flask gibt Ihnen request.headers.get ("user-agent") und request.remote_addr.

0

Sie können

import requests, json 
r = requests.get('https://httpbin.org/user-agent').json() 
print r['user-agent'] 

aber ich würde das tun nur, wenn ich den User-Agent überprüfen möchten in meinem Request-Header Ich gründe.