Spaces:
Running
Running
File size: 1,435 Bytes
0b8e6eb 75b6512 0b8e6eb 75b6512 0b8e6eb 75b6512 0b8e6eb 75b6512 |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 |
import gradio as gr
import requests
import json
from shapely.geometry import Polygon, MultiPoint, mapping
import re
import geopandas as gpd
from openai import OpenAI
import numpy as np
import os
def get_coords(ase):
request_url = 'https://nominatim.openstreetmap.org/search.php?q='+ase+'&polygon_geojson=1&accept-language=en&format=jsonv2'
headers = {
"User-Agent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/18.3 Safari/605.1.15"
}
page = requests.get(request_url, headers=headers, verify=False)
json_content = json.loads(page.content)
all_coordinates = json_content[0]['geojson']['coordinates'][0]
centroid = (float(json_content[0]['lon']), float(json_content[0]['lat']))
return all_coordinates, centroid
def process_api(input_text):
return {"result": get_coords(input_text)}
# request_url = 'https://nominatim.openstreetmap.org/search.php?q=Glebe&polygon_geojson=1&accept-language=en&format=jsonv2'
# headers = {
# "User-Agent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/18.3 Safari/605.1.15"
# }
# page1 = requests.get(request_url, headers=headers, verify=False)
# cont = page1.content
# 设置API格式为JSON
gr.Interface(
fn=process_api,
# fn=cont,
inputs="text",
outputs="json",
title="Backend API",
allow_flagging="never"
).launch() |