Веб-вход с использованием Python - PullRequest
0 голосов
/ 26 июня 2018

Я хочу войти по указанному URL-адресу. Я пробовал решение, но не могу убедиться, что оно работает. Как я могу убедиться, что он вошел в систему правильно. Любой совет будет полезен. Благодарю. Я новичок.

 import requests

#from lxml import html
login_url = 'https://epaper.thehindu.com'
req_url = 'https://epaper.thehindu.com/Home/Index'
payload = {
    "Email": "email",
    "Password":"pass"

}

with requests.Session() as session:
    post = session.post(login_url, data=payload)
    r = session.get(req_url)
    print (r.text)

Ответы [ 2 ]

0 голосов
/ 26 июня 2018

Попробуйте нижеуказанным способом. Я полагаю, вы получили правильный ответ сейчас. О параметрах полезной нагрузки все еще есть некоторые заблуждения, потому что я не могу проверить это правильно, поскольку у меня нет доступа к этой странице. Обязательно введите email и password в полях полезной нагрузки. Дайте ему шанс:

import requests
from bs4 import BeautifulSoup

url = 'https://epaper.thehindu.com/'
req_url = 'https://epaper.thehindu.com/Login/ValidateLogin'

with requests.Session() as session:
    res = session.get(url)
    soup = BeautifulSoup(res.text,"lxml")

    payload={
        '__RequestVerificationToken':soup.select_one("[name='__RequestVerificationToken']")['value'],
        'Email':'',  #your email
        'Password':'', #your password
        'hiddenTab':'' 
        }
    r = session.post(req_url,data=payload)
    soup = BeautifulSoup(r.text,"lxml")
    print(soup.title)
0 голосов
/ 26 июня 2018

Вы можете попытаться проверить, не изменились ли запросы файлов cookie сеанса. При входе в систему обычно добавляется файл cookie в ваш файл cookie сеанса, который вы можете проверить программно.

import requests

target_url = 'url'
target_user = 'user'
target_pw = 'password'

payload = {
    'username': target_user,
    'password': target_pw
}

with requests.Session() as session:
    print(session.cookies)
    r = session.post(target_url, data=payload)
    print(session.cookies)
    session.close()
...