Я прочитал несколько похожих тем. Я стараюсь следовать другим примерам, но я все еще застрял в середине нигде. У меня есть базовые навыки программирования на питоне и небольшие знания о http протокол, мои две цели: -succesfull аутентификации на веб-сайт с помощью запросов библиотеки -fetch данные с веб-сайта после входа в систему во время сеанса активенаутентификация python с библиотекой запросов через POST
Это код:
import requests
targetws = 'https://secure.advfn.com/login/secure'
s = requests.session()
payload_data = {'login_username': 'xxx', 'login_password': 'yyy'}
response = s.post(targetws, data=payload_data)
url='https://it.advfn.com/mercati/BIT/generali-G/ordini'
result = s.get(url)
print result.content
Но я всегда не добиваются успеха при входе в систему. Возможно, я пропустил какое-то значение в таких данных, как отправить действие, иначе? Любая помощь будет оценена, с наилучшими пожеланиями!
Здесь HTML код со страницы:
form action="https://secure.advfn.com/login/secure" id="login_form" name="login_form" method="POST" target="">
<input type="hidden" value="aHR0cDovL2l0LmFkdmZuLmNvbQ==" name="redirect_url" id="redirect_url">
<input type="hidden" value="it" name="site" id="site">
<div class="fields"><label for="login_username">Username</label>
<input type="text" tabindex="1" class="text ui-widget-content" value =""
id="login_username" name="login_username" maxlength="64">
</div>
<div class="fields"><label for="login_password">Password</label>
<input tabindex="2" type="password" class="text ui-widget-content" value="" id="login_password" name="login_password" maxlength="16">
</div>
<div class="fields">
<strong><a href="/common/account/password/request">Se ti sei dimenticato la tua password</a></strong>
<input class="button" tabindex="3" type="submit" value="Accedi" id="login_submit">
</div>
</form
Каков ответ, который вы получите, когда попытка входа в систему не удалась? Проверьте атрибуты 'status_code' и' text'. –
Спасибо за ответ, код состояния всегда 200 и текста: 200 TraceBack (самый последний вызов последним): Файл "deepbook.py", строка 21, в печати result.text UnicodeEncodeError: 'ASCII' кодек не может encode character u '\ xe0' в позиции 909: порядковый номер не в диапазоне (128) –
egariM
Тип вашего соединения, ожидающий заголовок форматированного URL-адреса, и вы отправляете объект json. data = 'username =' + user + '& password =' + password header = { "Content-Type": "application/x-www-form-urlencoded; charset = UTF-8" } – DevD