Відкрийте веб-сайт, не відкриваючи його в браузері з терміналу


14

Чи можливо відкрити веб-сайт з терміналу, не фактично відкривши нову вкладку?

наприклад: open https://www.google.co.uk/відкриє нову вкладку в програмі за замовчуванням і перейде на цей веб-сайт.

Я просто хочу команду, яка імітує дзвінок на веб-сайт, але не відкриває вкладку або нічого не показує.

Причина цього полягає в тому, що я намагаюся викликати команду на веб-сайті, але не хочу, щоб щось з'являлося, я просто хочу, щоб вона викликала команду.


Яка причина того, що ви хочете "викликати команду" - ви хочете, щоб веб-сервер вчинив для вас певні дії?
chrylis

@chrylis це правильно. Веб-сайт не виставляє API того, чого я хочу досягти, але є кнопка, яку користувач може натиснути, яка може це зробити, і ви можете бачити URL, за допомогою якого натискатиме кнопка.
Реківні

1
Можливо, вас зацікавить хром без голови: developers.google.com/web/updates/2017/04/headless-chrome . chrome --headless --disable-gpu https://www.google.comце також працює javascript (поки curlце не робиться).
Бакуріу

Відповіді:


25

Можна використовувати curl

curl https://www.google.co.uk/

і якщо ви не хочете виводу

curl --silent https://www.google.co.uk/ > /dev/null

17
Це припускає, що ви хочете зробити запит, але не хвилюйтеся про 1) JS на сторінці 2) зображення на сторінці 3) вторинні запити на сторінці тощо. В іншому випадку вам потрібно буде використовувати безголівковий браузер.
Девід Малдер

@DavidMulder Або використовуйте придатний для CLI API REST, якщо такий є.
chrylis -на страйк-

4

Curl і Wget можна використовувати для виклику веб-сайту, але якщо ви хочете імітувати якусь функцію на веб-сайті, вони точно не імітують користувача, який виконує запит у браузері.

У браузерах є двигуни, які обробляють css, javascript та html, тому вам доведеться ними користуватися.

Якщо ви хочете використовувати веб-сайт так, як ніби користувач використовував сайт через браузер, не відкриваючи браузер, ви повинні заглянути в кілька безголових тестових рамок, таких як PhantomJS, інакше браузер стоїть на платформі для тестування браузера api, до якого ви можете отримати доступ, це все одно відкрийте вкладку браузера, але в хмарі vm десь, так що ні на вашому фактичному пристрої.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.