我有一个用JAVA创建的网站,它只允许你登录后查看数据。。 现在,当我登录时,只需在新窗口中打开包含所有登录信息的页面,但当复制链接并粘贴到同一窗口中时,会出现一些图像
链接到登录页面 https://agency-pia.crane.aero/ 登录页面的图像
登录后出现的链接 https://agency-pia.crane.aero/JSF/RezvEntry.xhtml?faces-redirect=true 登录后出现的图像
现在,我愿意做的任何事情都是创建一个软件来刮取这个网站或web应用程序
``import requests
from bs4 import BeautifulSoup
headers = {
'user-agent': 'Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/67.0.3396.99 Safari/537.36'
}
login_data = {
'name': '<username>',
'pass': '<password>',
'form_id': 'new_login_form',
'op': 'Login'
}
with requests.Session() as s:
url = 'https://agency-pia.crane.aero/'
r = s.post(url, data=login_data, headers=headers)
print(r.text)
url = 'https://agency-pia.crane.aero/JSF/RezvEntry.xhtml?faces-redirect=true'
r = s.get(url, headers=headers)``
因此,我用python创建了一个应用程序,但我无法让它正常工作,它登录正常,但没有真正获得登录后的另一个页面
我什么都试过了,但不知道我做错了什么
我想要的是,当我登录时,我应该访问网站上的任何页面
您不能在
login_data={}
中指定像name
和pass
这样的随机名称。它应该是站点HTML中的确切值。而且你不能只发送一个POST请求到站点并期望它让你登录,它应该包含<form>
标签action
值(在你的例子中是action="MemberRezvEntry.jsp"
),并且每个隐藏的输入都应该包含在有效负载中,以防止任何可能的错误或者,您可以在登录站点后使用自定义cookie,并在bot中使用它
相关问题 更多 >
编程相关推荐