Как почистить страницу для прессы? Соответственно как зайти на страницу с запросом имени пользователя и пароля - PullRequest
0 голосов
/ 16 февраля 2020

Так что я совершенно не знаю, как объяснить мою проблему. Итак - я пытаюсь очистить страницу расписания (моей школы), чтобы было легче читать. К сожалению, я не мог понять, как передать кредиты в приглашение на вход в систему с python.

url = "https://www.diltheyschule.de/vertretungsplan/
или, скорее, этот, потому что он содержит фактические данные .
url = https://www.diltheyschule.de/vertretungsplan/f1/subst_001.htm

Я знаю пароль и имя пользователя.
Приглашение для входа выглядит так: enter image description here


Как вы уже догадались - я хочу передать пароль и имя пользователя в это приглашение. Этот код не работает для меня - он возвращает неавторизованную ошибку.

import requests
session = requests.Session()
r = session.post("https://www.diltheyschule.de/vertretungsplan/",data={"log":"xxx","pwd":"xxx"})
#or
r = session.post("https://www.diltheyschule.de/vertretungsplan/f1/subst_001.htm",data={"log":"xxx","pwd":"xxx"})
print(r.content)

output

<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
<html><head>
<title>401 Unauthorized</title>
</head><body>
<h1>Unauthorized</h1>
<p>This server could not verify that you
are authorized to access the document
requested.  Either you supplied the wrong
credentials (e.g., bad password), or your
browser doesn't understand how to supply
the credentials required.</p>
<hr>
<address>Apache Server at www.diltheyschule.de Port 443</address>
</body></html>

очень важная информация:

  1. цель состоит в том, чтобы очистить 'https://www.diltheyschule.de/vertretungsplan/f1/subst_001.htm'
  2. , передав pwd и войти в приглашение ( скорее всего без поддержки gui (например, селен)

1 Ответ

0 голосов
/ 16 февраля 2020

Этот каталог защищен базовой аутентификацией c. Это самый простой метод аутентификации, при котором вы можете войти в систему с соответствующими заголовками.

Вы также уверены, что хотите использовать метод POST для просмотра страницы. html *? 1003 *

Пожалуйста, попробуйте это:

import requests
session = requests.Session()

r = session.get("https://www.diltheyschule.de/vertretungsplan/f1/subst_001.htm",auth=requests.auth.HTTPBasicAuth('user', 'pass'))
print(r.content)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...