Показать сообщение отдельно
  #1 (permalink)  
Старый 14.03.2018, 17:56
Аватар для VNad66
Новичок на форуме
Отправить личное сообщение для VNad66 Посмотреть профиль Найти все сообщения от VNad66
 
Регистрация: 14.03.2018
Сообщений: 3

Безымянный динамический Table
Доброго времени суток уважаемые гуру, профи и гости форума. Прошу Вашей помощи с извлечением содержимого безымянной (без id) динамически создаваемой и обновляемой интерфейсом роутера таблицы.

Краткое описание задачи: Есть роутер TL-WR940N (его эмулятор на оф.сайте TP-LINK). С его помощью я планирую отслеживать активность сотрудников нашей компании (их наличии в кабинете фирмы, в коридоре или же за пределами действия сети Wifi компании, т.е. не на рабочем месте). Нанимать профи я не могу позволить, мы еще молодые и бюджет свободных наличных просто не позволяет. Из всевозможных логов роутера я могу определить уровень сигнала к тому или иному устройству в сети а так же его отсутствие в таковой и т.к. роутер всего в одном помещении и на его уровень сигнала ничего из замеченного мной, не влияет, сотрудники компании в активной сети Wifi и есть доказательство что они на рабочем месте а не активничают где-то за пределами офиса. Благодаря динамич.dns мне для подключения к роутеру не требуется прямое присутствие в своей сети wifi.

Что мне удалось выяснить: Веб-интерфейс роутера имеет несколько фреймов, интересующий меня фрейм "mainFrame" (он идет по центру веб-интерфейса и отображает детали выбранного пункта настроек). Доступ к нему я получаю штатно:
var frame_details = document.getElementsByTagName("frame")[2].contentDocument;
Далее уже могу выдергивать некоторые параметры, как "версия морды" или "версия прошивки", да многое другое, по след.примерам:
var software_version = frame_details.getElementById("fversion").innerHTML;
var hardware_version = frame_details.getElementById("hversion").innerHTML;
Но есть и такие которые я не могу выдернуть т.к. они находятся в той части таблицы что не имеет свой id, генерируется самим роутером и обновляется каждые 5 секунд. Хотелось бы запарсить всю таблицу а не ее отдельные элементы, а дальше уже разбор полетов деталей. Вот пример кода генерируемого роутером, он отображает имя Wifi сети (это просто как пример из все той же таблицы)
<tr><td class="Item" id="t_name_ssid">Имя беспроводной сети (SSID):</td><td colspan="2">KafelPlitka<br></td></tr>
<tr><td class="Item" id="t_mode">Режим:</td><td colspan="2"><span id="t_11bgnm">11bgn смешанный</span></td></tr>
<tr><td class="Item" id="t_chanel_width">Ширина канала:</td><td><span id="t_automatic" name="t_automatic">Автоматический</span></td></tr>
<tr><td class="Item" id="t_channel">Канал:</td><td colspan="2"><span id="t_auto" name="t_auto">Автоматически</span> (<span id="t_cur_chl" name="t_cur_chl">Текущий канал</span> 2)</td></tr>
<tr><td class="Item" id="t_mac_addr" name="t_mac_addr">МАС-адрес:</td><td colspan="2">EC-08-6B-64-47-04</td></tr>
<tr><td class="Item" id="t_wds_status">Состояние WDS:</td><td colspan="2"><span id="t_wds_dis">Отключено</span></td></tr>
и как выдернуть эти данные я не понимаю, не могу в силу своей молодости в Javascript и прошу помощи в любом виде и форме. Поиски по id "t_name_ssid" и им подобным ни к чему ни привели

Заранее благодарен за любую помощь
Ответить с цитированием