Можно ли загружать файлы из полей Filetype с помощью Ruby?

Я ищу способ загрузки файлов с разных страниц и их хранения в определенной папке на локальной машине. Я использую ruby 1.9.3

См. Поле ниже:

Filetypefield

File prompt to download

<Сильный> ИЗМЕНИТЬ

вот содержание html:

<input type="hidden" name="supplier.orgProfiles(1152444).location.locationPurposes().extendedAttributes(Upload_RFI_Form).value.filename" value="Screenshot.docx">


                                Screenshot.docx
                             

One Possiblity I just tried: with the html content if add say https://xyz.test.com and construct the URL like as below

https://xyz.test.com/aems/file/filegetrevision.do?fileEntityId=8120070&cs=LU31NT9us5P9Pvkb1BrtdwaCrEraskiCJcY6E2ucP5s.xyz

и поместите этот URL-адрес в браузер и нажмите Enter , чтобы дать мне возможность загрузить файл в качестве снимка экрана.

Теперь это можно сделать с помощью ruby через скрипт?

0
nl ja de
Может кто-нибудь мне помочь?
добавлено автор Arup Rakshit, источник

1 ответы

Поскольку вы не указали действительный URL-адрес, вам сложно тестировать решения.

В общем, получение содержимого URL-адреса одинаково, будь то страница или файл. Ruby's встроенный OpenURI - это быстрый путь:

require 'open-uri'
file = open('http://example.com').read

Сохранение этого файла очень просто:

IO.binwrite('/path/to/file_to_save', file)

Использование binwrite позволяет избежать любых переводов на конец строки, которые приведут к сохранению двоичных данных. Для использования текстовых данных:

IO.write('/path/to/file_to_save', file)

Оба IO.binwrite и IO.write документируются в модуль ввода-вывода .

1
добавлено
Может ли он обрабатывать диалоговое окно, когда я вставлял aobve?
добавлено автор Arup Rakshit, источник
https://xyz.test.com/aems/file/filegetrevision.do?fileEntity‌ Id = 8120070 & cs = LU31NT & zwnj; 9us5P9Pvkb1BrtdwaCrE & zwnj; raskiCJcY6E2ucP5s.xy & zwnj; z - ссылка для загружаемого файла. когда вы вставьте его в браузер и нажмите диалоговое окно команды enter , чтобы получить всплывающее окно. ваш код сохраняет файл таким образом или любым другим?
добавлено автор Arup Rakshit, источник
Хорошо, мне просто нужно загрузить файл с веб-страницы, и ссылка - это то, что я вставил. поэтому ваш код сможет это сделать. правильно?
добавлено автор Arup Rakshit, источник
Да! Я рад, что получил это. Просто спрашиваю! если возникнут какие-либо проблемы, я вставлю сюда свой полный код!
добавлено автор Arup Rakshit, источник
Хамм, я просто дал фиктивный URL, это логично. как оригинальный, это мой производственный url, поэтому я не дал. чтобы открыть, что мне тоже нужно поделиться паролем, чего я не должен. :)
добавлено автор Arup Rakshit, источник
Нет, у меня есть способ дойти до этой страницы с помощью selenium , и я нашел способ загрузить файл, надеюсь, что ваша помощь поддерживает меня.
добавлено автор Arup Rakshit, источник
Вы не можете напрямую взаимодействовать с диалоговым окном браузера, и вам не нужно нормально. Графический интерфейс браузера недоступен для Ruby, если вы не используете WATIR или одну из его производных.
добавлено автор the Tin Man, источник
ВАШ код, основанный на том, что мы показываем вам, сделает это. При переполнении стека, мы не обязательно предоставляем полный ответ, а только те части, которые вам нужно начать. И до сих пор я не видел кода, который вы написали.
добавлено автор the Tin Man, источник
Ваш URL-адрес зависает без ответа.
добавлено автор the Tin Man, источник
Тогда вы НЕ предоставили нам информацию, необходимую вам. Ваш URL-адрес находится за защищенным веб-сервером, который требует другого способа отслеживания данных. Я настоятельно рекомендую переписать свой вопрос, полностью осветить проблемы, указав, что URL-адрес не работает (и почему дать тот, который не работает, когда мы должны помочь вам загрузить файл?).
добавлено автор the Tin Man, источник
pro.ruby
pro.ruby
1 181 участник(ов)

Язык программирования Ruby Additional docs: https://rubyreferences.github.io/rubyref/ Invite: https://telegram.me/joinchat/Be4rsT2NuB3CyJaF26j1kA Кто хочет компилировать: @crystal_ru (его синтаксис основан на Ruby) Участник @proDOT

Ruby, Rails, Hanami | dry-rb
Ruby, Rails, Hanami | dry-rb
1 180 участник(ов)

https://telegram.me/rubyjob - Ruby Job По вопросам - @eugene_shved

Ruby School .us
Ruby School .us
1 045 участник(ов)

Чат-болталка для учеников руби-школы и не только. Правила: https://telegra.ph/Pravila-chata-Rubi-shkoly-03-13

Random Ruby Chat
Random Ruby Chat
589 участник(ов)

Правила публикации вакансий: https://t.me/codenamecrud/60865

Rubyata
Rubyata
333 участник(ов)

Коммюнити Ruby и Ruby On Rails Флуд не приветствуются. Вакансии можно публиковать только и ТОЛЬКО по пятницам с хештегом #вакансия.

Ruby Talks
Ruby Talks
236 участник(ов)

Национальная Флеймотека

RubyRush
RubyRush
189 участник(ов)

rubyrush.ru программирование для самых новичков