Ошибка в osmar :: get_osm () - PullRequest
0 голосов
/ 19 мая 2018

Я следовал учебнику о том, как загружать данные OSM в R с помощью пакета osmar, поэтому код:

library(osmar)
src <- osmsource_api()
bb <- center_bbox(174.76778, -36.85056, 700, 700)
ua <- get_osm(bb, source = src)

Когда я запускаю эту последнюю строку, появляется эта ошибка:

enter image description here

Я не уверен, что это значит.Когда я гуглю эту ошибку, я вижу только материалы, связанные с Bioconductor и biomaRt, которые не имеют никакого отношения к тому, что я работаю.Тем не менее, я считаю, что это как-то связано с подключением веб-сайта R к OSM (?).Поэтому мне интересно, если кто-нибудь знает несколько советов о том, как это исправить.Спасибо!

1 Ответ

0 голосов
/ 20 мая 2018

Сообщение об ошибке, которое вы видите, относится к следующему ответу от сервера.По сути, это означает, что пакет osmar пытается загрузить через HTTP, но вместо этого сервер перенаправляет вас в HTTPS-папку.По какой-то причине osmar не следует этому перенаправлению и не работаетВам, вероятно, следует сообщить об этой проблеме владельцу пакета, чтобы исправить ее.

<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
<html><head>
<title>301 Moved Permanently</title>
</head><body>
<h1>Moved Permanently</h1>
<p>The document has moved <a href="https://www.openstreetmap.org/api/0.6/map/?bbox=174.763855598139,-36.8537138679267,174.771704401861,-36.8474061320733">here</a>.</p>
<hr>
<address>Apache/2.4.18 (Ubuntu) Server at api.openstreetmap.org Port 80</address>
</body></html>

Одним из простых исправлений было бы предоставление правильного URL с HTTPS:

src <- osmsource_api(url = "https://api.openstreetmap.org/api/0.6/")

Примечание:OSM API (это конечная точка, которую вы используете) - только , предназначенная для редактирования карты.Так что в конце концов это может нарушать условия использования этой услуги.Лучше использовать некоторые альтернативы, основанные на зеркалах OSM или Overpass API.

...