Возможно ли скопировать fetch-запрос со страницы, на которой работает расширение?

Ссылка скопирована
1 ответ

Столкнулся с надобностью копировать конкретные fetch-запросы, отправляемые со страницы в автоматическом режиме. Реально ли это сделать силами JS или силами chrome webdriver'а? Так же возможно рассмотреть вариант с Selenium+Python.
Однако сложности добавляет тот факт, что открывать страницу DevTools нельзя в видимой области.

Дополнительно:

https://pypi.org/project/selenium-wire/

Selenium Wire расширяет привязки Selenium к Python, чтобы дать вам доступ к базовым запросам, выполняемым браузером. Вы создаете свой код так же, как и в Selenium, но получаете дополнительные API для проверки запросов и ответов и внесения в них изменений на лету.

Сам не пробовал, ничего сказать не могу.

  • Можно еще попробовать Mitmproxy - это сложнее.
    https://habr.com/ru/companies/selectel/articles/242727/
  • Viktor T2, Это прям то, что нужно! Спасибо огромное!
  • Не надо ставить как можно больше тэгов. Лучше оставить один, но конкретный, с которым проблема.
    См.п.3.1 Регламента. Также обратите внимание на п.3.4
  • Нужно решить такую задачу?

    Опишите проблему, и специалист поможет с настройкой, исправлением ошибки или доработкой сайта. Подберём понятный план работ без лишней переписки.

    Заказать помощь
    Лучший ответ
    1
    Алексей Денисов Ответ

    Да, возможно скопировать fetch-запрос со страницы, на которой работает расширение. Для этого вам потребуется использовать инструменты разработчика в вашем браузере.

    Вот как вы можете скопировать fetch-запрос:

    1. Откройте страницу, на которой работает расширение, в вашем браузере.
    2. Нажмите правой кнопкой мыши на странице и выберите "Инспектировать" или нажмите клавишу F12, чтобы открыть инструменты разработчика.
    3. Перейдите на вкладку "Network" (сеть). Здесь вы увидите все сетевые запросы, отправляемые и получаемые страницей.
    4. Выполните действия на странице, которые вызывают fetch-запрос, который вы хотите скопировать.
    5. Найдите соответствующий запрос в списке сетевых запросов. Обычно fetch-запросы имеют метод "fetch" и URL-адрес, к которому они обращаются.
    6. Нажмите правой кнопкой мыши на запросе и выберите "Copy" -> "Copy as cURL" или "Copy" -> "Copy as fetch".
    7. Теперь у вас есть скопированный fetch-запрос, который вы можете вставить в свой код.

    Пример кода fetch-запроса:

    fetch('https://example.com/data', {
      method: 'GET',
      headers: {
        'Content-Type': 'application/json'
      }
    })
    .then(response => response.json())
    .then(data => console.log(data))
    .catch(error => console.error('Error:', error));

    fetch('https://example.com/data', { method: 'GET', headers: { 'Content-Type': 'application/json' } }) .then(response => response.json()) .then(data => console.log(data)) .catch(error => console.error('Error:', error));

    Таким образом, вы можете легко скопировать fetch-запрос со страницы, на которой работает расширение, используя инструменты разработчика вашего браузера.

    Другие ответы (0)

    Пока нет других ответов. Будьте первым, кто поможет автору.

    Ответить на вопрос

    комментарий

    Ваш адрес email не будет опубликован. Обязательные поля помечены *

    Вам также может быть интересно