Как очистить веб-страницу, на которой сервер отвечает, чтобы получить запрос с помощью своего рода перенаправленного почPython

Программы на Python
Ответить Пред. темаСлед. тема
Anonymous
 Как очистить веб-страницу, на которой сервер отвечает, чтобы получить запрос с помощью своего рода перенаправленного поч

Сообщение Anonymous »

Я пытаюсь написать скрипт Python для выполнения простого парсинга веб-страниц, но не понимаю, как обрабатывать (и понимать) то, что передает мне веб-сервер. При просмотре сетевого трафика при отправке запроса на получение в браузере я вижу, что сервер предоставляет ответ 200, а затем браузер автоматически отправляет последующий почтовый запрос на тот же сервер с ответом, содержащим данные, которые я надеюсь очистить.
Вот URL-адрес, который вводится в браузер, приводит к появлению конечной веб-страницы с данными для очистки: https://www.defensetravel.dod.mil/neora ... =01&day=01
Ниже трафик, как показано в плагине браузера.
[img]https://i. sstatic.net/59Ah2KHO.png[/img]

Ниже приведены подробности последний запрос на публикацию, который отправляет браузер:
Изображение
< /p>
Изображение

Когда я отправляю запрос на получение, я вижу в возвращенном контенте с сервера написано "Вы перенаправлены...":

Код: Выделить всё

import requests
from requests import Request, Session
from bs4 import BeautifulSoup

session = requests.Session()

urlString = 'https://www.defensetravel.dod.mil/neorates/report/index.php?report=oha&locode=AS001&locode2=&rank=13&depend=YES&year=2025&month=01&day=01'

# Making a GET request
r1 = session.get(urlString, allow_redirects=True)

print(r1.history);

soup_r1 = BeautifulSoup(r1.content, 'html.parser')
print(soup_r1.prettify())
Я также пытался сфабриковать запрос на публикацию на основе того, что увидел в плагине браузера, но сервер выдал сообщение: «Введенные вами данные недействительны».

Код: Выделить всё

r3_url = "https://www.defensetravel.dod.mil/neorates/report/index.php";
r3_data = {"day": "01",
"depend": "YES",
"locode": "AS001",
"locode2": "",
"month": "01",
"rank": "13",
"report": "oha",
"year": "2025"};

r3_header= {"initiator": "https://www.defensetravel.dod.mil",
"Origin": "https://www.defensetravel.dod.mil",
"Referer": "https://www.defensetravel.dod.mil/neorates/report/index.php?report=oha&locode=AS001&locode2=&rank=13&depend=YES&year=2025&month=01&day=01",
"Content-Type": "multipart/form-data; boundary=----WebKitFormBoundary34wfzRWc2GjpY1IW",
};

r3 = session.post(r3_url, data=r3_data, headers=r3_header)

soup4 = BeautifulSoup(r3.content, 'html.parser')
print(soup4.prettify())
(Я не предоставляю бесчисленные другие версии моего кода для устранения неполадок, пытаясь понять, что происходит).
Я предполагаю, что в основе Я не совсем понимаю, как запрос на получение (при отправке через браузер) приводит к запросу на получение и отправке. И что еще более важно, как можно обрабатывать взаимодействие с веб-страницей/сервером, который это делает, в Python для получения возвращаемого содержимого окончательного запроса на публикацию?

Подробнее здесь: https://stackoverflow.com/questions/793 ... th-sort-of
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «Python»