【发布时间】:2022-01-02 23:35:23
【问题描述】:
当我访问此site 并写入任何地址时,如ENTER A LOCATION 下输入框中的Taekwondo Mattighofen, Am Steinbach, Lochen am See, Austria,我可以在开发工具中看到此autocompletion url,其中包含this 之类的参数。该自动完成网址的完整形式类似于 this,它会产生纬度和经度的值。
不过,我发现在我的以下脚本中使用从上述 api 手动获取的纬度和经度值来生成最终结果是成功的。
import requests
from bs4 import BeautifulSoup
link = 'https://www.ktm.com/content/websites/ktm-com/middle-east/ae/en/dealer-search/jcr:content/root/responsivegrid_1_col/dealersearch.dealers.json'
params = {
'latitude': '48.0075483',
'longitude': '13.1848824',
'country': '',
'qualification': '',
'distance': '50'
}
with requests.Session() as s:
s.headers['User-Agent'] = 'Mozilla/5.0 (Windows NT 6.1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/88.0.4324.150 Safari/537.36'
res = s.get(link,params=params)
print(res.json())
如何使用基于请求构建的 python 脚本基于任何地址(如
Nachhilfe Mattighofen, Rosengasse, Mattighofen, Austria)生成这样的自动完成 url?
【问题讨论】:
-
建议来自
GoogleMaps API。 -
你为什么要免费卸载一个付费访问这个 API 的网站?看起来非常不道德,很可能是非法的。
标签: python python-3.x web-scraping python-requests