如何解决为什么我不能使用请求模块登录网站
因此,我需要登录到网站,因为我需要执行一项操作,要求先登录。 这是我的代码:
import requests from bs4 import BeautifulSoup
logdata = {'username': 'xxx','password': 'xxx'}
url = 'https://darkside-ro.com/?module=account&action=login&return_url='
with requests.Session() as s:
r = [s.post](https://s.post)(url,data=logdata)
html = r.text soup = BeautifulSoup(html,"html.parser")
print(soup.title.get_text())
它给了我您未登录时的标题:(
解决方法
我不确定为什么我将其标记为重复,对不起。
好的,所以我创建了一个虚拟帐户并尝试登录-我注意到在提交表单时,以下数据将发送到https://darkside-ro.com/?module=account&action=login&return_url=
。
因此,要解决您的问题,您必须在server
词典中加入logdata
。
import requests
from bs4 import BeautifulSoup
logdata = {
'username': 'abc123456','password': 'abc123456','server': 'Darkside RO'
}
url = 'https://darkside-ro.com/?module=account&action=login&return_url='
with requests.Session() as s:
r = s.post(url,data=logdata)
html = r.text
soup = BeautifulSoup(html,'html.parser')
print(soup.title.get_text())
运行上面的代码将打印
Darkside RO - The Rise of Skywalker
PS:再次执行此操作时,最好通过检查元素来检查表单中的隐藏输入。在上面的网站上,
<input type="hidden" name="server" value="Darkside RO">
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。