簡體   English   中英

使用requests模塊登錄網站失敗

[英]Failed to log in to a website using the requests module

我正在嘗試通過使用請求模塊創建的 python 腳本登錄網站 我已經向服務器發出了帶有適當參數和標頭的 post HTTP 請求,但由於某種原因,與我在開發工具中看到的相比,我從該站點得到了不同的響應。 不過,狀態始終為 200。 腳本中還有一個獲取請求,一旦登錄成功,該請求應獲取憑據。 目前,它在最后一行拋出JSONDecodeError

import requests

link = 'https://propwire.com/login'
check_url = 'https://propwire.com/search'

headers = {
    'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/103.0.0.0 Safari/537.36',
    'x-requested-with': 'XMLHttpRequest',
    'referer': 'https://propwire.com/login',
    'accept-encoding': 'gzip, deflate, br',
    'accept-language': 'en-US,en;q=0.9,bn;q=0.8',
    'origin': 'https://propwire.com',          
}
payload = {"email":"some-email","password":"password","remember":"true"}

with requests.Session() as s:
    r = s.get(link)
    headers['x-xsrf-token'] = r.cookies['XSRF-TOKEN'].rstrip('%3D')
    s.headers.update(headers)
    s.post(link,json=payload)
    res = s.get(check_url)
    print(res.json()['props']['auth'])

取決於您得到的響應,有些響應無法解碼。 不適用於您,但作為示例:如果您刪除某些內容並獲得 204 響應,則無法對 json 進行解碼。

暫無
暫無

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

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