Nodejs 求问这种经纬度在地图上的怎么抓取经纬度信息
Nodejs 求问这种经纬度在地图上的怎么抓取经纬度信息
http://www.subaru-china.cn/tools/dealer.html
这是斯巴鲁官网经销商页面,
F12 找了一圈,并没有经纬度的数据存在。。
8 回复
map.js
console.log(‘get point’);
F12 network 筛选 XHR / .js -->
http://www.subaru-china.cn/impublic/tools/js/dealer/data.js
这里没有经纬度哦
如何确认该网站确实是采用了这种方法?
解决了~感谢
在Node.js中抓取地图上的经纬度信息,通常涉及与地图服务提供商(如Google Maps、OpenStreetMap等)的API进行交互。以下是一个使用Google Maps Geocoding API的简单示例,它可以将地址转换为经纬度。
首先,你需要在Google Cloud Platform上启用Geocoding API并获取一个API密钥。
const axios = require('axios');
async function getLatLngFromAddress(address, apiKey) {
const url = `https://maps.googleapis.com/maps/api/geocode/json?address=${encodeURIComponent(address)}&key=${apiKey}`;
try {
const response = await axios.get(url);
const results = response.data.results;
if (results.length > 0) {
const location = results[0].geometry.location;
return {
lat: location.lat,
lng: location.lng
};
} else {
throw new Error('No results found');
}
} catch (error) {
console.error('Error fetching geocode:', error);
throw error;
}
}
// 使用示例
const address = '1600 Amphitheatre Parkway, Mountain View, CA';
const apiKey = 'YOUR_GOOGLE_MAPS_API_KEY';
getLatLngFromAddress(address, apiKey).then(coord => {
console.log('Latitude:', coord.lat);
console.log('Longitude:', coord.lng);
}).catch(err => {
console.error(err);
});
确保将YOUR_GOOGLE_MAPS_API_KEY
替换为你的实际API密钥。这段代码使用axios
库发送HTTP请求,并解析返回的JSON数据以获取经纬度信息。如果地址有效,它将打印出相应的纬度和经度。