Могу ли я выполнить JavaScript на иностранной веб-странице, используя PHP?

Я хочу написать PHP-скрипт, который выполняет код на иностранном веб-сайте так же, как с помощью JS-консоли на этой веб-странице. Я не хочу, чтобы сервер действовал как клиент на этой определенной веб-странице.

Чтобы сделать это еще сложнее, JavaScript должен выполняться в другом фрейме (при выполнении JavaScript вручную я переключился бы на нужную консоль, щелкнув конкретный фрейм в раскрывающемся меню над консолью (Chrome)).

Если я попытаюсь сделать что-то почти невозможное здесь, пожалуйста, не стесняйтесь сказать мне именно это.

1

Решение

Вы должны попытаться описать, какова ваша конечная цель. Вы, вероятно, идете по неверному пути здесь. Нет способа добавить JavaScript на страницу, которую вы не обслуживаете сами.

0

Другие решения

Если я понимаю, что вы имеете в виду (и более подробно здесь очень поможет). Вы хотите автоматизировать то, что вы можете сделать вручную в браузере, вручную запустив javascript на веб-странице (через консоль). Единственная причина, по которой я могу подумать, что вы захотите сделать это, состоит в том, чтобы инициировать запрос Ajax / вызов API или отправить форму.

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

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

Если вы можете выяснить детали запроса на отправку, вы можете использовать CURL, чтобы сделать запрос — эта страница может помочь: https://davidwalsh.name/curl-post

Если вы все еще находите, что вам нужно / нужно на самом деле запускать javascript на удаленной странице, то это «автоматизация браузера», и хотя технически это может быть вызвано из PHP — требуется гораздо больше, чтобы сделать это возможным. Selenium в основном используется для автоматизации тестов, но позволит вам сделать это: http://www.seleniumhq.org/ через JavascriptExecutor, но я бы порекомендовал вам выполнить дальнейший поиск учебных пособий, так как он слишком большой / широкий, чтобы его можно было здесь охватить:

https://seleniumhq.github.io/selenium/docs/api/java/org/openqa/selenium/JavascriptExecutor.html

0

По вопросам рекламы ammmcru@yandex.ru
Adblock
detector