LINUX.ORG.RU

Чтение/запись поля веб формы с командной строки

 , , ,


1

2

Всем привет! Может кто даст наводку, мысли.

Можно ли как-то с консоли прочитать/записать вебформу по имени в Firefox?

Суть: есть объект <\ inout type=«text» name=«link» value=«www.linux.org.ru» >, есть ли утилиты, которые помогут получить к нему доступ и прочитать/записать с него данные? Может есть плагины на ФФ, но в идеале если это реализовать с командной строки.

Не обязательно API ФФ, думаю средствами Хорга можно тоже.

Спасибо!



Последнее исправление: Show4k (всего исправлений: 1)

Ответ на: комментарий от Show4k

В таком случае мне не приходит в голову ничего иного, кроме как написать расширение для firefox с native bridge, из которого ты затем каким либо образом сможешь извлечь данные.

eternal_sorrow ★★★★★
()

Причём тут Xorg вообще?

Из этого потока мыслей не понятно, что именно ты пытаешься сделать и зачем. Если ты хочешь что-то автоматизировать, то никакой фаерфокс тебе не нужен. Если ты хочешь изменить что-то именно на открытой странице в ff, то просто открой консоль разработчика и меняй, в чём проблема?

Соберись и напиши внятно и по порядку, чего именно ты пытаешься добиться.

WitcherGeralt ★★
()
Последнее исправление: WitcherGeralt (всего исправлений: 1)
Ответ на: комментарий от eternal_sorrow

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

WitcherGeralt ★★
()
Ответ на: комментарий от WitcherGeralt

Верно, нужно кое-что автоматизировать. А именно заполнение полей на веб-странице. Сделать это крайне желательно скриптом на Баше (или хоть на чем). Короче, через задний проход.

Есть такая утилита wmctrl, отличная вещь для работы с окнами. Интересно, есть ли что-то подобное, чтоб работать с веб-страницей? Ведь по сути страницы - это форма с элементами управления, а значит ими можно как-то управлять.

Консоль разработчика, CURL и т.д. в данном случае не годится. О расширении можно покумекать, но лучше скрипт на Баше (хоть на чем).

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

Можно через любой другой браузер, но лучше через ФФ.

Show4k
() автор топика

Даю наводку: https://developer.mozilla.org/en-US/docs/Mozilla/Add-ons/WebExtensions/Native_messaging.

Я даже пытался как-то аддон написать, с помощью которого можно было бы объекты с веб-страницы шэрить в нативные приложения через контекстное меню, например, изображения прозрачно открывать в Гимпе за пару кликов, а не в самом браузере, минуя рутину типа «сохранить изображение локально -> открыть Гимп -> открыть изображение в Гимпе через файловый диалог».

Virtuos86 ★★★★★
()
Ответ на: комментарий от WitcherGeralt

У меня есть текст в CSV. Скрипт должен его распарсить и запихать данные в нужные поля на веб-странице. Порядка 200 полей, поэтому вручную очень накладно. Если скриптом не получится, попробую смотреть в сторону расширений для браузера. Чтоб например скормить расширению текст, а он его раскидал по полям :)

Show4k
() автор топика
Ответ на: комментарий от Show4k

Проще всего установить менеджер (расширение) пользовательских скриптов и написать скрипт, который будет добавлять кнопку для загрузки csv на нужной странице, будет его парсить и всё заполнять. Это чуть быстрее, чем пилить плагин.

Два варианта выше тоже подойдут, но не вижу смысла.

Ещё можно юзать puppeteer. Но это хромиум.

WitcherGeralt ★★
()
Ответ на: комментарий от WitcherGeralt

Ещё можно юзать puppeteer. Но это хромиум.

Если это сделано на WebExtensions, то портируется на лису тривиально. Некоторые правки в манифесте + API WebExtensions в хромом юзает колбэки, а в ФФ – промисы (но емнип, мозиловцы уже расширили API, чтобы хромиумоподобный интерфейс был доступен, прогнулись, так сказать).

Virtuos86 ★★★★★
()
Ответ на: комментарий от Show4k

О расширении можно покумекать, но лучше скрипт на Баше (хоть на чем).

А может лучше скрипт на Javascript, который будет выполняться в контексте страницы?

theNamelessOne ★★★★★
()
Ответ на: комментарий от Show4k

CURL и т.д. в данном случае не годится потому что ты не осилил отловить запросы с куками и параметризовать или есть нормальная причина?

Селениум или любой его аналог - то что нужно в данной задаче, разве что скрипт будет не на баше, а на каком-нибудь питоне.

Можно еще использовать это: https://addons.mozilla.org/ru/firefox/addon/greasemonkey/ https://developers.google.com/web/updates/2017/04/headless-chrome

Первое - если надо автоматизировать посреди пользовательского нахождения на сайте, второе - если не хочется использовать дополнительных обвязок.

Dred ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.