dimanche 25 octobre 2015

Python 3 Urllib Posting Issues

I was hoping someone could possibly help me with urllib posting. My goal for this program is to post an IP address and to obtain its relative location. I know there are many APIs and such out there, but my school isn't too keen on having any of their computers modified in any way (this is for a comp sci class). So as of right now the code below gets me my location as my computer IP is already sensed by the website (I'm guessing in a header?), but what I'd like to do is just input an IP and have a returned location. ipStr is just the IP string (and in this case it's Time Warner Cable's IP in NYC). I tried setting values and submitting the data but no matter what I set the values to, it just returns my own computers location. Any ideas?

ipStr = "72.229.28.185"


url = "http://ift.tt/1Mrbsvb"

values = {'value': ipStr}

headers = {}

headers ['User-Agent'] = 'Mozilla/5.0 (Windows NT 6.1; WOW64; rv:40.0) Gecko/20100101 Firefox/40.1'

data = urllib.parse.urlencode(values)

data = data.encode('utf-8')

req = urllib.request.Request(url,data=data, headers = headers)

resp = urllib.request.urlopen(req)

page = str(resp.read())

npattern = "Google Map for"

nfound = re.search(npattern,page)

ns = nfound.start()
ne = nfound.end()

location = ""

while page[ne:ne +1] != "(":

    location += page[ne:ne+1]

    ne += 1




Aucun commentaire:

Enregistrer un commentaire