簡體   English   中英

Python Web抓取登錄

[英]Python web scraping login

我正在嘗試使用python登錄到網站。 登錄URL為:

https://login.flash.co.za/apex/f?p=pwfone:login

並且“表單操作”網址顯示為:

https://login.flash.co.za/apex/wwv_flow.accept

當我手動登錄時在chrome上使用“ inspect element”時,這些是顯示的表單帖子(pt_02 =密碼):

在此處輸入圖片說明

有一些隱藏的項目,我不確定如何添加到下面的python代碼中。

當我使用此代碼時,將返回登錄頁面:

import requests
url = 'https://login.flash.co.za/apex/wwv_flow.accept'
values =    {'p_flow_id': '1500',
            'p_flow_step_id': '101',
            'p_page_submission_id': '3169092211412',
            'p_request': 'LOGIN',
            'p_t01': 'solar',
            'p_t02': 'password',
             'p_checksum': ''
            }

r = requests.post(url, data=values)
print r.content

如何調整此代碼以執行登錄?

Chrome網絡:

在此處輸入圖片說明

由於無法重新創建案件,因此無法告訴您要確切更改的內容,但是在執行此類操作時,我使用Postman攔截了瀏覽器發送的所有請求。 因此,我將安裝它以及瀏覽器擴展,然后執行登錄。 然后,您可以在Postman中查看請求,還可以查看在此收到的響應,此外,它還為您提供了請求的Python代碼,因此您可以簡單地復制並使用它。 不久,使用Pstman,執行登錄,克隆他們的請求。

這或多或少是您的腳本的外觀。 使用會話自動處理Cookie。 手動填寫usernamepassword字段。

import requests
from bs4 import BeautifulSoup

logurl = "https://login.flash.co.za/apex/f?p=pwfone:login"
posturl = 'https://login.flash.co.za/apex/wwv_flow.accept'

with requests.Session() as s:
    s.headers = {"User-Agent":"Mozilla/5.0"}
    res = s.get(logurl)
    soup = BeautifulSoup(res.text,"lxml")

    values = {
        'p_flow_id': soup.select_one("[name='p_flow_id']")['value'],
        'p_flow_step_id': soup.select_one("[name='p_flow_step_id']")['value'],
        'p_instance': soup.select_one("[name='p_instance']")['value'],
        'p_page_submission_id': soup.select_one("[name='p_page_submission_id']")['value'],
        'p_request': 'LOGIN',
        'p_arg_names': soup.select_one("[name='p_arg_names']")['value'],
        'p_t01': 'username',
        'p_arg_names': soup.select_one("[name='p_arg_names']")['value'],
        'p_t02': 'password',
        'p_md5_checksum': soup.select_one("[name='p_md5_checksum']")['value'],
        'p_page_checksum': soup.select_one("[name='p_page_checksum']")['value']
    }

    r = s.post(posturl, data=values)
    print r.content

暫無
暫無

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

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