Вставьте значения CSV в несколько полей формы на любой веб-странице.

Проблема:

В Интернете есть много хороших страниц с научными калькуляторами.

На некоторых страницах калькулятора есть большая текстовая область, куда вы можете просто вставить введенные значения CSV напрямую.

Но...некоторые формы калькулятора требуют ввода/вставки КАЖДОГО входного значения в отдельное поле ввода формы!

 [x1] [x2] [x3] ...etc.

Это трудоемко, если вы хотите ввести много точек данных, много раз...

Посмотрите на этого бывшего. Калькулятор: http://zweigmedia.com/RealWorld/multlinreg.html

Еще один пример: http://zweigmedia.com/RealWorld/multlinreg.html

Видеть? Вам нужно вводить/вставлять каждое входное значение по отдельности...ага!

Вопрос:

Существует ли Bookmarklet или скрипт AHK Autohotkey, который просто вставляет множество входных значений CSV (возможно, скопированных из электронной таблицы Excel или других входных данных? источник), во все поля формы ввода Калькулятора, СРАЗУ?.

Это было бы действительно полезно, если бы это был ОБЩИЙ script/bkmlt (т.е.: для ЛЮБОЙ такой формы калькулятора в Интернете)...

спасибо! SFdude *Win XP SP3*


person SFdude    schedule 04.02.2011    source источник


Ответы (2)


Я не знаю таких скриптов, но вы можете легко написать их сами или нанять кого-нибудь для этого (vworker.com). Метод заключается в использовании модуля COM.ahk, найденного на форумах, и отправке javascript в браузер (я знаю, что это работает, по крайней мере, для IE).

Однако для каждого калькулятора пришлось бы настраивать javascript. Я не могу представить общий способ сделать это.

person David    schedule 04.02.2011

Я предполагаю, что вы уже знаете, как получить данные из CSV. Ввод данных на веб-страницу так же прост, как анализ входной таблицы и ввод данных:

wb := ComObjCreate("InternetExplorer.Application")
wb.Navigate("http://zweigmedia.com/RealWorld/multlinreg.html")
wb.Visible := true
while wb.busy
    sleep 10

n := 0
table := wb.document.theForm.all.tags("table")[0]

; loop through all the rows
; skip Row 0 since its headers - A_Index starts at 1 anyways
Loop % table.rows.length - 1 {
    ; access the cells in the row
    cells := table.rows[A_Index].cells
    ; loop through the cells
    Loop % cells.length
        ; each cell has an input element - access & set the value of this element
        cells[A_Index-1].childNodes[0].value := n++
}

В этом примере используется AutoHotkey_L

person a4u    schedule 16.12.2011