простой python веб-соскоб с логином - PullRequest
0 голосов
/ 23 апреля 2020

Кажется, я не могу подключиться к веб-сайту, чтобы удалить его. Интересно, я что-то не так делаю или нет? Я попробовал тот же код на другом сайте, и он работает, но я не получаю никакой ошибки аутентификации ... Буду признателен за любую помощь, спасибо!

import requests
from bs4 import BeautifulSoup

login_url = 'https://secure.selfwealth.com.au/Account/Login?ReturnUrl=%2F'
session = requests.Session()
page = session.get(login_url)

soup = BeautifulSoup(page.text, 'html.parser') 
token = soup.find(attrs={"name": '__aft'}).get('value')

payload = {
    "email": "bob@gmail.com", 
    "password": "mypwd",
    "__aft": token 
}


result = session.post(login_url, data=payload)
page = session.get(login_url)
#print(result.ok)

soup = BeautifulSoup(page.content, 'html.parser')
results = soup.find('div', class_='daily-perf')
results2 = soup.find("title")
#marketvalue = results.find('div', class_='price-change')
print(results)
print(results2)
print(payload)

1 Ответ

2 голосов
/ 23 апреля 2020
import requests
from bs4 import BeautifulSoup

data = {
    "Email": "your@email.com",
    "Password": "yrpass"
}


headers = {}


def main(url):
    with requests.Session() as req:
        r = req.get("https://secure.selfwealth.com.au/Account/Login")
        soup = BeautifulSoup(r.content, 'html.parser')
        headers["X-XSRF-TOKEN"] = soup.find("input",
                                            {"name": "__aft"}).get("value")
        r = req.post(url, json=data, headers=headers).json()
        print(r)


main("https://secure.selfwealth.com.au/api/login")
...