Вот команда wget, которая выполняет пакет отчетов по стеку HTML / PHP, размещенный третьей стороной - у нас нет контроля над страницей PHP или HTML
wget --no-check-certificate --http-user = / myacc --http-password = mypass -O /tmp/myoutput.csv "https://myserver.mydomain.com/mymodule.php?myrepcode=9999&action=exportcsv&admin=myappuserid&password=myappuserpass&startdate=2011-01-16&enddate=2011-01-16&reportby=mypreferredview"
Все элементы работают отлично:
- http-user / --http-pass, предлагаемый стандартным всплывающим окном браузера для запроса имени пользователя и пароля
-O /tmp/myoutput.csv - интересующий выходной файл
https://myserver.mydomain.com/mymodule.php?myrepcode=9999&action=exportcsv&admin=myappuserid&password=myappuserpass&startdate=2011-01-16&enddate=2011-01-16&reportby=mypreferredview"
Файл, сгенерированный на лету по параметрам
myrepcode = 9999 - ссылка на рассматриваемый отчет
action = exportcsv, записанный внутри функции
admin = myappuserid сторонняя сторона использует SSL для доступа к сайту - затем внутреннее имя пользователя и пароль хранятся в базе данных для доступа к функциям сайта)
пароль = myappuserpass
startdate = 2011-01-16 эти и конечные данные являются параметрами, характерными для отчета 9999
EndDate = 2011-01-16
reportby = mypreferredview Это опция в отчете, которая обеспечивает разные уровни детализации или агрегирования
Проблема в том, что параметр reportby является переключателем в списке из 5 вариантов выбора (уверен, что мне достаточно по умолчанию самый высокий уровень агрегации, я хочу последний, наиболее подробный)
Вот пример кода HTML-страницы для опций отчета
Теги в HTML не занесены в белый список, поэтому я отправлю образец, если потребуется
<td>View by</td>
<td>
<input class="naf-radio" name="reportby" id="reportby[thedefault]" value="thedefault" type="radio">The Default
<input class="naf-radio" name="reportby" id="reportby[myleastpreferred]" value="myleastpreferred" type="radio">My Least Preferred
<input class="naf-radio" name="reportby" id="reportby[mysecondleastpreferred]" value="mysecondleastpreferred" type="radio">My Second Least Preferred
<input class="naf-radio" name="reportby" id="reportby[mythirdleastpreferred]" value="mythirdleastpreferred" type="radio">My Third Least Preferred
<input class="naf-radio" name="reportby" id="reportby[mypreferred]" value="mypreferred" type="radio">My Preferred
</td>
Независимо от того, какой из элементов отчета я выбираю в операторе wget - ошибка всегда выполняется.
Вопросы
1) Кто-нибудь сталкивался с этой нотацией в HTML (id = inputname [inputelement])
Я разговаривал со старшим веб-разработчиком, и он никогда не видел эту запись для входных данных (id = inputname [inputelement]) - и w3schools, похоже, тоже не знакомы с этим на основе обширного поиска
2) Может ли команда wget выбрать радиоустройство не по умолчанию при выполнении команды?
Это, вероятно, будет первоначально получено с ответом "Use CURL" - однако подход wget очень хорошо работает в ограниченной среде, в которой я работаю, особенно потому, что мне нужно загрузить 10000 таких элементов.
Спасибо за ответ