python-3.x - 如何使用python3像这个网站一样卷曲登录?
问题描述
我正在尝试使用 python 登录此页面,但在Login中遇到了一些问题。
import requests
session = requests.Session()
params = {'username': 'username', 'password': 'password'}
r = requests.post("http://cip.chinatimes.com/login_ws.asp", params)
print(r.cookies.get_dict())
s =session.get("http://cip.chinatimes.com/international/cip_cmd_result.asp")
print(s.text)
解决方案
如果我们去掉http://cip.chinatimes.com/登录表单中所有不重要的内容,我们会得到:
<form name="frmMain" method="post" action="login_ws.asp" id="Form1">
<input name="ID" type="text" class="txtbox" id="Text1">
<input name="PWD" type="password" class="txtbox" id="Password1">
<input type="image" src="images/login.gif">
<input type="hidden" name="SYS" value="CIP" id="Hidden1">
<input type="hidden" name="Login" value="登入" id="Hidden2">
</form>
具有name
您需要在请求中提供的属性的所有内容。所以在我看来你的参数应该是:
params = {'ID': 'username', 'PWD': 'password', 'SYS': 'CIP', 'Login': '登入'}
推荐阅读
- laravel - 如果用户属于多个组织,则单独的角色/权限
- azure-devops - 如何仅从 Azure DevOps(WIQL)中的树查询中输出用户故事?
- numpy - numpy eigenvector 的奇怪行为:错误或没有错误
- sql - 如何在表中选择不同的列,只搜索特定的单词?使用 WHERE 命令\
- java - Spring Boot 找不到我的自动装配类(Autowired 成员必须在有效的 Spring bean 中定义)
- ruby - NameError 异常:Wheyscrapper:Class 的未定义局部变量或方法“产品”
- bash - 解析多个数据实例
- angularjs - 如何识别未使用的控制器、工厂、指令
- python - PySpark - 带有 lambda 函数的映射
- graphql - Karate-afterFeature - 主功能文件不能使用 Karate-afterFeature 调用另一个功能文件