2014-10-15 2 views
0

다른 웹 사이트를 사용하여 내 웹 사이트에 양식을 자동으로 채우고 싶습니다. 아래 form이 처리 된 후 콘텐츠를 가져오고 싶습니다. 관련 주제 (1, 2, 3)를 읽었지만 어떤 필드를 보내고 보내는 방법이 약간 혼란 스럽습니다. 그것을 수행하는 방법 http://fix-tt.mary.com/tmtrack/tmtrack.dllPython에서 POST를 사용하여 웹 사이트에 로그인하는 방법은 무엇입니까?

<form name="Login" id="Login" method="POST"> 
    <input name="TMBNX" type="hidden" value="ISO-8859-1"> 
    <input name="postpreservationdata" type="hidden" value=""> 
    <input name="target" type="hidden" value="HTTP%3A%2F%2Ffix-tt.mary.com%2Ftmtrack%2Ftmtrack.dll%3FPage%26Id%3D4245024%26template%3Dviewwrapper%26TableId%3D1003"> 
    <input name="smauthreason" type="hidden" value="0"> 
    <input name="smtryno" type="hidden" value=""> 
    <input name="smretries" type="hidden" value="1"> 
    <input name="bacmonitoring" type="hidden" value="LOG ON"> 

    <h3>Use your email address</h3> 

    <label>Email address:</label> 
    <input name="USER" type="text"> 
    <div class="email-login-help clearfix"> 
    <span class="help">Format: [email protected]</span> 
    </div> 
    <br> 

    <label>Computer password:</label> 
    <input name="PASSWORD" class="computer-pass text" onpaste="return false" type="password" autocomplete="off"> 

    <div class="submit-row"><input class="btn btn-primary" onclick="javascript:trimAndSubmit();" type="submit" value="Log on"> </div> 

    <br> 
</form> 

어떤 생각이 내 가상의 URL의 형태이다?

+0

wget 사용 http://stackoverflow.com/questions/1324421/how-to-get-past-the-login-page-with-wget – stark

답변

1

파이썬에서이 작업을 수행 할 경우에는 요청 라이브러리를 사용할 수 있습니다

http://docs.python-requests.org/en/latest/user/quickstart/#more-complicated-post-requests 위의 코드는 단지 추측을하는 필요할 수 있습니다 필드들이있다

import requests 
payload = {'USER': '[email protected]', 
      'PASSWORD': 'password123', 
      'TMBNX': 'ISO-8859-1', 
      'smauthreason': 0, 
      'smretries': 1, 
      'bacmonitoring': 'LOG ON', 
      'target': 'http://fix-tt.mary.com/tmtrack/tmtrack.dll', 

      } 
r = requests.post("http://path-to-login-page.com", data=payload) 
print(r.text) 

, 그것은 일 수 있었다를 사용자 이름과 비밀번호 만 필요합니다. 추측은 기본 매개 변수가 지정된 필드를 기반으로합니다. 그래도 좋은 시작이 될 것입니다.

+0

완벽하게 작동합니다! 고맙습니다! 웹 사이트에 제대로 액세스하려면 [프록시] [1]을 사용해야했지만 도움이 필요했습니다. 감사! [1] : http://stackoverflow.com/questions/8287628/proxies-with-python-requests-module –

관련 문제