在python中使用来自web的图像

2024-10-01 22:25:13 发布

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

所以我的目标是:

使用googlemapsapi生成一堆地图,并在我的计算机上实时运行,类似于GIF的样子。你知道吗

我有一只熊猫dataframe,看起来像这样:

   diffSecs   latitude  longitude  altitude                 time code name
0     1.614  42.386391 -71.013544        50  2011-12-16 08:09:07     PEONY
1     1.115  42.386391 -71.013544        50  2011-12-16 08:09:08     PEONY
2     0.952  42.386391 -71.013544        50  2011-12-16 08:09:09     PEONY
3     0.923  42.386391 -71.013544        50  2011-12-16 08:09:10     PEONY
4     1.307  42.386391 -71.013544        50  2011-12-16 08:09:11     PEONY

所以我有一个贯穿经纬度的函数,它创建了一个由数百个url组成的列表,这些url是一个地图的图像,其中一个点位于人的位置上。你知道吗

函数如下:

def url_maker(df):
    urls = []
    df = df.reset_index(drop=True)
    name = df['code name'][0]
    if name == "APPLE" or name == "DAFODIL" or name == "LILLY" or name == "LILY" or name == "ORANGE" or name == "ROSE" or name == "SUNFLOWER" or name == "SWEETPEA":
        label = "C"
        color = 'blue'
    else:
        label = "P"
        color = 'red'
    lats,lons = df.latitude, df.longitude
    center = home_finder(df)
    for i in range(len(df)-1):
        x,y = str(lats[i]),str(lons[i])
        marker = '&markers=color:' + color + '%7Clabel:' + label + '%7C' + x + ',' + y
        url = 'http://maps.googleapis.com/maps/api/staticmap?size=600x300&maptype=roadmap&zoom=7&center=' + center + marker + '&sensor=true'
        urls.append(url)
    return urls

这将返回一个URL列表,这些URL是人员在地图上的位置。所以你知道,home_finder函数在一个数据帧中获取gps坐标,并近似于这个人的居住地,这样我就可以观察他们离家有多远。你知道吗

我的问题是:

现在我已经有了一个我需要的所有图片URL的列表,我怎样才能用它来制作一个电影,这样我就可以实时地观看点的移动了?有没有一个模块可以帮我做这个?我已经在这上面呆了一个多星期了!你知道吗

注意:

我曾想过在Django中使用一个循环来实时更新标记,但我以前从未使用过Django,所以我真的不知道这是否可行,也不知道我是如何做到的。如果我能在Django做,我怎么能?但是如果有可能在我自己的电脑上这样做,并且可能将其保存在GIF或MOV文件中,那就更好了100倍!你知道吗


Tags: ordjango函数nameurldf列表地图
1条回答
网友
1楼 · 发布于 2024-10-01 22:25:13

对于每个url,使用urllibBeautifulSoup在该页面(See this SO post)下载图像。你知道吗

使用subprocess模块运行ImageMagick脚本,该脚本将创建GIF文件的MOV:

convert -quality 100 *.png maps.mov

或:

convert -set delay 3 -loop 0 -scale 50% *.png maps.gif

相关问题 更多 >

    热门问题