4
我目前正在嘗試從我使用rvest的url列表中刮取緯度/經度數據。每個網址都有一個內嵌的谷歌地圖和一個特定的位置,但是這些網址本身並不顯示該API正在使用的路徑。刮在rvest中的位置數據
當在頁面的源代碼看,我看到我之後的部分是在這裏:
<script type="text/javascript" src="http://maps.google.com/maps/api/js?sensor=false">
</script>
<script type="text/javascript">
function initialize() {
var myLatlng = new google.maps.LatLng(43.805170,-70.722084);
var myOptions = {
zoom: 16,
center: myLatlng,
mapTypeId: google.maps.MapTypeId.SATELLITE
}
var map = new google.maps.Map(document.getElementById("map_canvas"), myOptions);
var marker = new google.maps.Marker({
position: myLatlng,
map: map,
title:"F.E. Wood & Sons - Natural Energy"
});
現在,如果我能先手具有經緯度(....)輸入行,我可以使用一些字符串解析操作來派生所有URL的緯度和經度值。
我寫了下面的代碼獲取我的數據:
require(rvest)
require(magrittr)
fetchLatLong<-function(url){
url<-as.character(url)
solNum<-html(url)%>%
html_nodes("#map_canvas")%>%
html_attr("script")
}
(以下簡稱「map_canvas」的選擇是使用selectorGadget發現,你可以查看整個源here)。
我正在最糟糕的時間得到這個閱讀我以後。我嘗試了很多節點和節點的組合,無濟於事。我玩過phantom.js,但問題在於它不是js呈現的HTML內容:我在查找API查詢輸入,該輸入寫入頁面代碼(至少,給我的業餘眼睛似乎是)。
有沒有人有任何建議?