2016-04-20 2 views
0

Я хотел бы знать, как использовать в bash, чтобы сначала выбрать некоторые параметры на интернет-странице, затем загрузить файл * .txt и перенаправлен (после анализа файлов) на другую страницу и, наконец, нажать кнопку, чтобы загрузить новый файл все это в bash.Загрузите и загрузите файлы с помощью кнопок cURL (или других).

Я нашел много информации о форумах относительно cURL и о том, как заполнять формы и загружать файлы, но очень часто вы можете скачать файл, обратившись с помощью URL/file.txt. Мне кажется, что это другое, потому что страница использует некоторый код для анализа моего .txt-файла и вывода нового.

Сайт MSC server и мне нужно проверки CADD флажок в варианте 2, загрузить * .txt по выбирая файл, нажмите на загрузки & представить и после неоспоримым перенаправлены нажмите на результате загрузки , Вот HTML важные части

первая страница:

<form action="UploadServlet" method="post" enctype="multipart/form-data"> 
Apply MSC to: <input TYPE=checkbox name=measure1 VALUE=CADD> CADD 1.3 
<input type="file" name="fname" id="fileChooser" size="16" /><br> 
<input type="submit" value="Upload & Submit" size="20" onclick="document.getElementById('pleaseWait2').style.display = 'block';"/> 

вторая страница:

<form action="DownloadServlet" method="post"> 
<input type="submit" value="Download Result" color ="#ff0000" size = 200> 

Это то, что я пытался

curl -L -F measure1=CADD -F [email protected] -F submit="Upload & Submit" http://pec630.rockefeller.edu/MSC/ 

Это было то, что я пытался за первый но это только показывает мне на терминале HTML-код той же страницы, а не тот, где я должен быть перенаправлен. И даже если это дает мне HTML-код второй страницы, я не знаю, как загрузить файл, во-первых, потому что URL-адрес изменяется, поэтому я не знаю, что положить для URL-адреса (я думаю, что это что-то с файлами cookie но я не уверен), а во-вторых, даже когда я пытаюсь нажать на кнопку и загрузить файл (например, на кнопку на первой странице, он все еще показывает мне код HTML, и он не загрузите текстовый файл).

Надеюсь, я был достаточно ясным и что вы сможете мне помочь, я все еще новичок в программировании, и прошло 10 часов с тех пор, как я начал находить, как это сделать: /.

Также, это мой первый вопрос (обычно я всегда нахожу предыдущие вопросы, похожие на мои). Я пользуюсь этой возможностью, чтобы поблагодарить вас за то, что ваши ответы всегда очень ясны, и я надеюсь, что смогу помочь другим люди, когда я пойму больше того, что я делаю :)

+0

Возможно, вам нужно указать значения для других полей в форме? Например,. 'dbsource1',' trustInterval1'? – larsks

+0

Я уже пробовал проверять каждую коробку, поэтому, к сожалению, нет (только) того: / –

ответ

0

Я не нашел нужный код, который я искал (я полагаю, это проблема с кукисами, но даже когда я пытался обрабатывать их с помощью cURL it не работает), но я нашел способ обойти «любые» (я думаю) проблемы cURl. Может быть, это поможет другим:

Просто скопируйте заголовки ваш компьютер посылает на сайт, как Вы делаете то, что вы хотите: в Google Chrome вид -> разработчик -> инструменты для разработчиков ->делать то, что вы хотите -> щелкните правой кнопкой мыши по имени, которое появляется в боковой панели -> скопируйте как cURL -> вставьте его в свой код

Это, конечно, не лучший способ сделать это, но если вы в отчаянии, как и я, это работает :)