簡體   English   中英

Python 填寫登錄表格

[英]Python fill login form

我是 python 的新手,我正在嘗試登錄網頁以從中獲取一些數據

這是我的代碼:

import requests 
from selenium import webdriver

driver = webdriver.Chrome() 
url = "https://mano.eso.lt" 
driver.get(url) 
user = "xxxx@xxxx.com" 
password = "yyyyyyy"

payload = {
    "name[name]": user,
    "user[pass]": password
    }

s = requests.Session() 
p = s.post(url, data = payload) 
s.close 
driver.close

所以我得到的只是打開網頁,但沒有填寫 forms 並且沒有向網頁發送信息有人可以幫忙處理這段代碼嗎?

謝謝

我認為您嘗試發出 POST 請求的 URL 不正確。 您必須在 API 端點 URL 上而不是在網頁 URL 上發出相同的請求。

好的,所以我得到了一些信息:

    <form class="user-login-form" data-drupal-selector="user-login-form" novalidate="novalidate" autocomplete="off" action="/" method="post" id="user-login-form" accept-charset="UTF-8">
<div class="input-type type-email">
    <input autocorrect="none" autocapitalize="none" spellcheck="false" autofocus="autofocus" data-drupal-selector="edit-name" aria-describedby="edit-name--description" type="email" id="edit-name" name="name" value="" size="60" maxlength="254" class="form-email required" required="required" aria-required="true" />
          </div>
          <div id="edit-name--description" class="description">
          Įveskite el.pašto adresą
        </div>

<div class="input-password-wrapper">
  <input autocomplete="off" data-drupal-selector="edit-pass" aria-describedby="edit-pass--description" type="password" id="edit-pass" name="pass" size="60" maxlength="128" class="form-text required" required="required" aria-required="true" />
  <span class="password-view-toggle"><i class="icon-eye-closed"></i></span>
</div>

      </div>

所以我寫了一個類似的代碼:

import time
from webbot import Browser
web = Browser()
web.go_to('https://mano.eso.lt')
time.sleep(5)
web.type('XXXXXX@xxxx.xxx', into = 'email')
time.sleep(1)
web.type('YYYYYYYYY', into = 'password')

結果是該頁面正在打開並且 email 正在寫入它。 但是對於密碼它不起作用。 有什么問題嗎?

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM