Очистить значения из HTML теги выбора / опции в R

Я пытаюсь (довольно безуспешно) очистить некоторые данные с веб-сайта (www.majidata.co.ke), используя R. Я сумел очистить HTML и разобрать его, но теперь немного не уверен, как извлечь биты, которые я на самом деле необходимость!

С использованиемXML библиотека Я очищаю свои данные, используя этот код:

majidata_get <- GET("http://www.majidata.go.ke/town.php?MID=MTE=&SMID=MTM=")
majidata_html <- htmlTreeParse(content(majidata_get, as="text"))

Это оставляет меня с (Большой) XMLDocumentContent. На веб-странице есть раскрывающийся список, и я хочу извлечь из него значения (которые относятся к названиям и идентификационным номерам разных городов). Биты, которые я хочу извлечь, это числа между<option value ="XXX">&nbsp;и имя, следующее за ним заглавными буквами.

<div class="regiondata">
       <div id="town_data">
        <select id="town" name="town" onchange="town_data(this.value);">
         <option value="0" selected="selected">[SELECT TOWN]</option>
         <option value="611">AHERO</option>
         <option value="635">AKALA</option>
         <option value="625">AWASI</option>
         <option value="628">AWENDO</option>
         <option value="749">BAHATI</option>
         <option value="327">BANGALE</option>

В идеале я хотел бы, чтобы они были в data.frame, где первый столбец - это число, а второй столбец - это имя, например.

ID       Name
611      AHERO
635      AKALA
625      AWASI

и т.п.

Я не совсем уверен, куда идти отсюда. Я думал использовать регулярные выражения и сопоставлять шаблон в тексте, хотя я читал на нескольких форумах, что это плохая идея и что лучше / эффективнее использовать xpath. Не совсем уверен, с чего начать, хотя, кроме мысли, что мне нужно использоватьxpathApplyкак-то.