检查页面时隐藏表单 Headers?
Hidden Form Headers while inspecting page?
我试图使用 requests
登录 roll20.com,但我在检查网页时无法在 DevTools 中找到包含登录信息的表单 Headers。是否有可能隐藏这些以防止像我这样的人做我想做的事情?
经过一些研究我可以得出结论,您可以使用下面的代码通过请求登录(至少它适用于 roll20.net):
import requests
import base64
import re
loginData = {
'email':'mymail@mail.com',
'password':'password'}
# basic headers for request
headers = {
'User-Agent': 'Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:96.0) Gecko/20100101 Firefox/96.0',
'Accept': 'application/json, text/plain, */*',
'Referer':'https://app.roll20.net/login'}
# send request for creating a session
resp1 = requests.post(
url='https://app.roll20.net/v2/sessions/create',
data=loginData,
headers=headers)
# parse cookie from response header
# we need it to authorizate successfully
cookie = resp1.headers['set-cookie']
cookie = re.search(r'(rack.session=([^;]+))', cookie).group()
headers['Cookie'] = cookie
print(resp1.status_code)
print(resp1.headers)
print('\n\n')
# update header 'Referer'
headers['Referer']='https://app.roll20.net/login'
# requesting home page of the site
resp2 = requests.get(
url='https://app.roll20.net/home',
headers=headers)
print(resp2.status_code)
print(resp1.headers)
print('\n\n\n')
# saving last response body as file to check it was ok
with open('index.html', 'w', encoding='utf-8') as file:
file.writelines(resp2.text)
您只需要 - 在 loginData 字典中提供您自己的 login/password。
之后可以查看文件index.html,可以看到授权成功
Final result in index.html
反正找不到有用的,就看你的了
我试图使用 requests
登录 roll20.com,但我在检查网页时无法在 DevTools 中找到包含登录信息的表单 Headers。是否有可能隐藏这些以防止像我这样的人做我想做的事情?
经过一些研究我可以得出结论,您可以使用下面的代码通过请求登录(至少它适用于 roll20.net):
import requests
import base64
import re
loginData = {
'email':'mymail@mail.com',
'password':'password'}
# basic headers for request
headers = {
'User-Agent': 'Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:96.0) Gecko/20100101 Firefox/96.0',
'Accept': 'application/json, text/plain, */*',
'Referer':'https://app.roll20.net/login'}
# send request for creating a session
resp1 = requests.post(
url='https://app.roll20.net/v2/sessions/create',
data=loginData,
headers=headers)
# parse cookie from response header
# we need it to authorizate successfully
cookie = resp1.headers['set-cookie']
cookie = re.search(r'(rack.session=([^;]+))', cookie).group()
headers['Cookie'] = cookie
print(resp1.status_code)
print(resp1.headers)
print('\n\n')
# update header 'Referer'
headers['Referer']='https://app.roll20.net/login'
# requesting home page of the site
resp2 = requests.get(
url='https://app.roll20.net/home',
headers=headers)
print(resp2.status_code)
print(resp1.headers)
print('\n\n\n')
# saving last response body as file to check it was ok
with open('index.html', 'w', encoding='utf-8') as file:
file.writelines(resp2.text)
您只需要 - 在 loginData 字典中提供您自己的 login/password。 之后可以查看文件index.html,可以看到授权成功
Final result in index.html
反正找不到有用的,就看你的了