2016-03-10 86 views
2

我一直在努力使用rvest獲得一段數據。我正在查找的數據片段是20960內部的OpenView(20960)。我將如何完成這與Rvest?用rvest捕獲onclick

我一起工作的HTML的一個例子節

<tr class="row-1" align="left"> 
<td style="width:120px;"> 
<a href="#" onclick='OpenView(20960);return false;'> 
BAKER, JAIME EDWARD</a> 
</td> 
</tr> 
+2

你嘗試過什麼碼?你不能只提取onclick屬性? – MrFlick

+0

歡迎來到Stack Overflow!請閱讀關於[如何提出一個好問題](http://stackoverflow.com/help/how-to-ask)以及如何給出[可重現的示例]的信息(http://stackoverflow.com/questions/ 5963269)。這會讓其他人更容易幫助你。 – zx8754

回答

2

我認爲這需要一點點grepping ...

library("rvest") 
library("stringr") 
read_html('<tr class="row-1" align="left"> 
<td style="width:120px;"> 
      <a href="#" onclick=\'OpenView(20960);return false;\'> 
      BAKER, JAIME EDWARD</a> 
      </td> 
      </tr>') %>% 
    html_nodes("a") %>% 
    html_attr("onclick") %>% 
    str_extract("(?<=\\().*(?=\\))") %>% # returns the stuff inside the parens 
    str_trim(side="both")     # trims whitespace from both sides 
    [1] "20960" 
+0

工作。我沒有考慮過在html_attr之後需要做些什麼。我在這方面還是有點新的。謝謝你教我新的東西,回答我的問題。非常感激。 – thatsawinner