2015-05-02 3 views
0

я хочу, чтобы напечатать источник панели HTML после успешного входа в систему PayPal, Вот мой полный кодPython Войти PayPal с заявками

import requests 
import lxml.html 

# Get Auth & Login URL 
get_login = requests.get('https://paypal.com/cgi-bin/webscr?cmd=_login-run') 
get_login_response = get_login.text.encode('utf-8') #printing html source 
get_login_html = lxml.html.fromstring(get_login_response) #printing <Element html at 0x7f19cb242ec0> 
auth = get_login_html.xpath("//input[@name='auth']/@value") #printing [<InputElement 7fb0971e9f18 name='auth' type='hidden'>] 
login_url = get_login_html.xpath("//form[@name='login_form']/@action") 

# Post Login 
payload = { 
'login_cmd':'', 
'login_params':'', 
'login_email':'[email protected]', 
'login_password':'jancok666', 
'auth':auth[0], 
'submit.x':'Log In', 
'form_charset':'UTF-8', 
'browser_name':'Firefox', 
'browser_version':'18', 
'browser_version_full':'18.0' 
} 
post_login = requests.post(login_url[0], data=payload) 
post_login_response = post_login.text.encode('utf-8') 

print post_login_response 

но то, что я получаю HTML источник капчи вызов как этот

......... <h1 class="headerText">Security Challenge</h1><p>Type the characters you see in the image for security purposes.</p> 

Security Image

Так как я могу напечатать источник HTML приборной панели после успешного входа в систему? Что не так с моим кодом? Большое спасибо: D

+0

У Paypal есть API для доступа к вашим данным. Вам не нужно очищать страницу. Это может представлять угрозу безопасности для клиентов. Поэтому они внедрили несколько мер для предотвращения соскабливания. Используйте API! –

+0

Прежде всего, что Клаус говорит: ваш код не имеет конкретной ошибки, он пытается сделать что-то, что нарушает правила пользователя и правила безопасности PayPal. PayPal обнаруживает, что вы являетесь автоматическим агентом, а не человеком, и блокируете доступ таким образом. Не пытайтесь. Мало того, что PayPal сделает несколько шагов, чтобы заблокировать вас, но вы также потенциально подвергнетеся юридической опасности. – geewiz

+0

@KlausD. Что делать, если я создаю небольшое приложение, которое может проверять баланс PayPal, но в этом случае это проверка баланса массы, поэтому у меня есть списки адресов электронной почты и паролей, давайте предположим, что у вас 5 писем и пароль, поэтому алгоритм получает электронную почту первой линии и передает> контрольный баланс> распечатать баланс, затем отправить второй адрес электронной почты и передать> проверить баланс> баланс печати и т. д. до завершения, возможно ли это с помощью API? Благодарю. –

ответ

-1

Я вижу только два решения либо решение дампа и попытаться решить капчу с помощью Pytesser или, как выше просто обратитесь к API Paypal ответы должно быть проще сделать это

Смежные вопросы