Python脚本从u

2024-09-28 21:30:41 发布

您现在位置:Python中文网/ 问答频道 /正文

我有一个带有地址的数据库,我想运行一个脚本,从谷歌地图抓取横向信息并输入到数据库中。在

我想通过输入如下地址来调用站点: http://maps.google.com/maps?q=1600+Amphitheatre+Parkway+Mountain+View+CA+94043

其中q=之前的所有内容都是静态的,后面的所有内容都是由脚本生成的。在

当您单击地址时,将返回: https://www.google.com/maps/place/1600+Amphitheatre+Pkwy,+Mountain+View,+CA+94043/@37.4224879,-122.08422,17z/data=!3m1!4b1!4m2!3m1!1s0x808fba027820e5d9:0x60a90600ff6e7e6e

如何A)编程Python访问第一个网站,然后将返回的站点保存到一个变量中,B)将@后面的两个数字拉成两个独立的变量?在


Tags: 脚本comview信息数据库http内容站点
1条回答
网友
1楼 · 发布于 2024-09-28 21:30:41

你也可以使用googleapiv3。根据答案GoogleMaps API -address to coordinates (latitude,longitude)

import urllib
import simplejson
googleGeocodeUrl = 'http://maps.googleapis.com/maps/api/geocode/json?'
def get_coordinates(query, from_sensor):
    query = query.encode('utf-8')
    params = {
        'address': query,
        'sensor': "true" if from_sensor else "false"
    }
    url = googleGeocodeUrl + urllib.urlencode(params)
    json_response = urllib.urlopen(url)
    response = simplejson.loads(json_response.read())
    if response['results']:
        location = response['results'][0]['geometry']['location']
        latitude, longitude = location['lat'], location['lng']
        print query, latitude, longitude
    else:
        latitude, longitude = None, None
        print query, "<no results>"
        print
    return latitude, longitude


u  = 'http://maps.google.com/maps?q=1601+Amphitheatre+Parkway+Mountain+View+CA+94043'
get_coordinates(u[30:],'False')

1601+圆形剧场+公园路+山地+景观+CA+94043 37.4240679-122.0859093

相关问题 更多 >