2013-05-08 2 views
0

У нас есть приложение Java, работающее на сервере tomcat, и я написал простой скрипт для входа в систему, но я не позволю мне входить в систему, он просто висит на шаге br.open.проблема механизации python с java-приложением

#!/usr/bin/python 
import mechanize 
br=mechanize.Browser() 
br.open('https://www.example.com') 
br.select_form(nr=0) 
br['user[login]']= user1 
br['user[password]']= Pass1 
br.submit() 
br.retrieve('https://www.example.com/','page1.html') 

Когда я бегу в интерактивном режиме на питона оболочки его висит на br.open

>>> br.open('https://www.example.com/') 

hanging here..... 

ли механизировать работу с j_security_check? или приложение базы java?

ответ

0

Я не знаком с механизацией, вообще говоря, urllib2 - это то, куда вы идете делать HTML в Python. Можно ли попробовать это с помощью http, а не https?

Приложение Java также должно обслуживать HTML в стандартном формате. механизация в основном просто выталкивает HTML и позволяет вам делать что-то с этим, обратите внимание, что он не будет запускать Javascript, поэтому, если этот экран входа в систему - всплывающее окно Javascript, это не сработает, я считаю, что это только делает вещи в стандартном GET POST формат.

+0

http перенаправлено на httpd, также я проверил информацию об источнике и свой html. Я не знаю, почему его не работает. – Satish

+0

После этого я добавил комментарий, но он, похоже, не сохранил его. Во всяком случае, [здесь] (http://stackoverflow.com/questions/11276461/sending-post-parameters-with-python-using-mechanize) ссылка на аналогичную запись на SO, которая может помочь. Также похоже, что вы пытаетесь передать массив через POST, и я уверен, что вы не можете сделать это напрямую, если это не особая особенность библиотек. –

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