无法使用python请求模块登录网站

时间:2019-06-04 10:31:13

标签: python html python-requests

我正在尝试使用请求模块抓取我的学校网站。为了输入我的帐户,我必须提交我的用户名和密码。我尝试使用selenium进行此操作,但是当我登录后尝试获取html内容时,它为我提供了登录页面的html。

这是我必须在其中放置数据的框的html代码:

<input class="input_account idesk-force-focus placeholder" 
type="text" id="login" placeholder="Codice personale/ Email/ Badge" 
name="login" value="" size="56" tabindex="2" 
style="border-radius: 5px; border: 1px solid #aaaaaa;
 height: 30px; font-size: 16px; padding-left: 4px; 
width: 490px;   margin-left: 60px; ">

这是硒代码<​​/ p>


def SelLog():

    driver = webdriver.Chrome()
    driver.get("https://web.spaggiari.eu/home/app/default/menu_webinfoschool_studenti.php")

    #keys
    username = driver.find_element_by_xpath("//*[@id='login']")
    password = driver.find_element_by_xpath("//*[@id='password']")
    confirm = driver.find_element_by_xpath("//*[@id='login-container']/div[2]/div/div/input")

    #fill element
    username.send_keys(USERNAME)
    password.send_keys(PASSWORD)
    confirm.click()
    time.sleep(1)


    homeworks = driver.find_element_by_xpath('//*[@id="data_table"]/tbody/tr[14]/td[4]/a')
    homeworks.click()



    contentSel = "https://web.spaggiari.eu/fml/app/default/agenda_studenti.php"
    contentReq = requests.get("https://web.spaggiari.eu/fml/app/default/agenda_studenti.php")
    print(contentReq)

    response = urllib.request.urlopen(contentSel)
    html = response.read()


所以我尝试了其他一些模块,但是结果相同。 我在互联网上搜索了一些答案,发现请求模块非常适合此操作。

所以我尝试了在stackoverflow上找到的这段代码:

payload = {"login":USERNAME, "password": PASSWORD}

def req():
    username = USERNAME
    password = PASSWORD
    url = URL
    params = {"action":"process"}
    session = requests.session()
    r = session.post(URL, data = payload, params = params)
    account = session.get("https://web.spaggiari.eu/home/app/default/menu_webinfoschool_studenti.php?custcode=")
    print(account.content)

但仍然没有结果。

有人可以帮我吗?

ps对不起,英语

0 个答案:

没有答案