我试图使用python登录网站,用户名和密码的字段在其名称中包含一个美元符号,我该如何克服它?
import requests
with requests.Session() as c:
url = 'http://www.somewebsite.com/login.aspx'
USERNAME = 'username'
PASSWORD = 'password'
login_data = dict(ctl00$MainContent$txtLogin=USERNAME, ctl00$MainContent$txtPwd=PASSWORD)
字段名称为ctl00 $ MainContent $ txtLogin和ctl00 $ MainContent $ txtPwd。
答案 0 :(得分:6)
这只是一个问题,因为您使用关键字参数调用dict构造函数。如果您使用更普通的文字语法,它可以正常工作:
login_data = {'ctl00$MainContent$txtLogin': USERNAME, 'ctl00$MainContent$txtPwd': PASSWORD}
答案 1 :(得分:0)
使用方括号和正确的字符串键。
login_data = {} # or dict()
login_data['foo$bar'] = 'baz'