Note that there are some explanatory texts on larger screens.

plurals
  1. POSending POST data with Requests library in Python
    primarykey
    data
    text
    <p>I am unable to send POST data to access my account using requests library in Python. The resulting <code>soup</code> is the same as if no POST has been sent This is the code I have been using and worked on a different site:</p> <pre><code>def get_data(final_url): payload = {'session[email]':'myemail@myemail.com','session[password]':'mypwd','session[remember_me]':'0','commit':'Sign in'} with requests.session() as ses: log_soup = BeautifulSoup(ses.get('https://www.login-page.com/login').text) payload['utf8'] = log_soup.findAll('input',attrs={'name':'utf8'})[0].get('value') payload['authenticity_token'] = log_soup.findAll('input',attrs={'name':'authenticity_token'})[0].get('value') ses.post('https://www.login-page.com/login',data=payload) req = ses.get(final_url) soup = BeautifulSoup(req.text) return soup &lt;form accept-charset="UTF-8" action="/sign_in" class="main_form" id="new_session" method="post" novalidate="novalidate"&gt;&lt;div style="margin:0;padding:0;display:inline"&gt;&lt;input name="utf8" type="hidden" value="&amp;#x2713;"/&gt;&lt;input name="authenticity_token" type="hidden" value="l5+2s90FtEUsS3GHlr2tAktcxSW8jqgXx3mXEwIlAzE="/&gt;&lt;/div&gt;&lt;div class="error_message"&gt; &lt;/div&gt; &lt;dl&gt; &lt;dt&gt;&lt;label for="session_email"&gt;Email&lt;/label&gt;&lt;/dt&gt; &lt;dd&gt; &lt;div class="input_border"&gt;&lt;input autofocus="autofocus" class="text required email" id="session_email" name="session[email]" placeholder="Email" size="30" type="email"/&gt;&lt;/div&gt; &lt;/dd&gt; &lt;/dl&gt; &lt;dl&gt; &lt;dt&gt;&lt;label for="session_password"&gt;Password&lt;/label&gt;&lt;/dt&gt; &lt;dd&gt; &lt;div class="input_border"&gt;&lt;input class="text required" id="session_password" name="session[password]" placeholder="Password" size="30" type="password"/&gt;&lt;/div&gt; &lt;/dd&gt; &lt;/dl&gt; &lt;div class="checkbox_field"&gt;&lt;input name="session[remember_me]" type="hidden" value="0"/&gt;&lt;input id="session_remember_me" name="session[remember_me]" type="checkbox" value="1"/&gt;&lt;label for="session_remember_me"&gt;Remember me&lt;/label&gt;&lt;/div&gt; &lt;table class="buttons"&gt; &lt;tr&gt; &lt;td&gt;&lt;input class="button public" data-disable-with="Please wait..." name="commit" type="submit" value="Sign in"/&gt;&lt;/td&gt; &lt;td class="forgot_password"&gt;&lt;a href="/passwords/new"&gt;Forgot your password?&lt;/a&gt;&lt;/td&gt; &lt;/tr&gt; &lt;/table&gt; &lt;/form&gt; </code></pre> <p>The POST data obtained after manually logging in is the following:</p> <pre><code>utf8:✓ authenticity_token:l5+2s90FtEUsS3GHlr2tAktcxSW8jqgXx3mXEwIlAzE= session[email]:myemail@myemail.com session[password]:mypwd session[remember_me]:0 </code></pre> <p>Thank you very much for your help!</p>
    singulars
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    plurals
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. This table or related slice is empty.
 

Querying!

 
Guidance

SQuiL has stopped working due to an internal error.

If you are curious you may find further information in the browser console, which is accessible through the devtools (F12).

Reload