Python web scraping - Почему всегда получается исходный код домашней страницы? - PullRequest
0 голосов
/ 19 декабря 2018

Я выполнил все начальные шаги для входа в систему, смог получить доступ к веб-сайту, я пытаюсь смоделировать одну поисковую операцию, используя запрос POST (фактически выполненный с помощью формы отправки действия на веб-портале), операция прошла успешно, ноИсточник страницы, который я получил, находится на странице "Домой"

Я могу понять, если исходный код страницы 100% не отображается в источнике страницы (при условии, что данные получены с использованием JavaScript), но здесь страница ответа является статической "Домашней" страницей.

Что такое перенаправление на домашнюю страницу?Как остановить эту навигацию?

Вот шаги кода для достижения этой цели:

import requests

session = requests.Session()
session.get(access_config['login-url'])
session.post(access_config["auth-url"], data=auth_config)
res = session.post(link)
print(res.status_code)
print(res.history)
print(res.url)
print(res.text)

ответ:

status code :: 200

history :: <html><head><title>302 Moved Temporarily</title></head>
<body bgcolor="#FFFFFF">
<p>This document you requested has moved 
temporarily.</p>
<p>It's now at <a href="https://www.xxxx.com/a/welcome.html">https://www.xxxx.com/a/welcome.html</a>.</p>
</body></html>

response URL :: https://www.xxxx.com/a/welcome.html

Я использую requests библиотека, я знаю, что многие люди используют библиотеку selenium для этих операций, есть ли что-нибудь, что я мог бы сделать, используя requests или кроме selenium?

1 Ответ

0 голосов
/ 19 декабря 2018

@ SonalBorkar Спасибо!снова

Я проверил с помощью «Инспектора Firefox» и обнаружил 2 запроса за увиденным, как вы можете видеть на рис.enter image description here

Код ниже работал отлично -

import requests

session = requests.Session()
session.get(access_config['login-url'])
session.post(access_config["auth-url"], data=auth_config)
session.post(link1)
res = session.get(link2)
print(res.status_code)
print(res.history)
print(res.url)
print(res.text)

link1 и link2 были видны после двойного щелчка по строке инспектора

link1 -> двойной щелчок по search.html

link2 -> двойной щелчок по seriessearch.html?...

...