为什么 post 更新 Steam 头像的请求不起作用?
Why does a post request to update steam avatar not work?
我正在尝试通过 post 请求向此 site* 上传新头像,但没有成功。我试图模仿我通过 google chrome 上传文件时所做的请求,但也没有任何反应。
这是代码
import requests
r = requests.post(
url='https://steamcommunity.com/actions/FileUploader?type=player_avatar_image&sId=STEAM64ID',
files=
{
'file': open('test.png', 'rb')
},
cookies=
{
'sessionid': '', #Left blank for privacy reasons
'steamLoginSecure': '',
'steamCountry': '',
'browserid': ''
}
)
print(r.cookies)
当我运行代码时,这是输出
<RequestsCookieJar[]>
它不应该打印我发送的cookie吗?
*sId=Your steam64id
这个动作应该由人通过浏览器完成吗?如果是这样,Steam 可能会采取措施阻止您的程序/机器人使用此操作。
服务器很可能需要 session 数据、特定 cookie headers、人类用户代理等,这样机器人将无法上传。
编辑:
勾选 robots.txt:
User-agent: *
Disallow: /actions/
Disallow: /linkfilter/
Disallow: /tradeoffer/
Disallow: /trade/
Disallow: /email/
Host: steamcommunity.com
您显然不允许在您的程序中使用 /actions/ 路由,Steam 强制执行此规则。
我正在尝试通过 post 请求向此 site* 上传新头像,但没有成功。我试图模仿我通过 google chrome 上传文件时所做的请求,但也没有任何反应。
这是代码
import requests
r = requests.post(
url='https://steamcommunity.com/actions/FileUploader?type=player_avatar_image&sId=STEAM64ID',
files=
{
'file': open('test.png', 'rb')
},
cookies=
{
'sessionid': '', #Left blank for privacy reasons
'steamLoginSecure': '',
'steamCountry': '',
'browserid': ''
}
)
print(r.cookies)
当我运行代码时,这是输出
<RequestsCookieJar[]>
它不应该打印我发送的cookie吗?
*sId=Your steam64id
这个动作应该由人通过浏览器完成吗?如果是这样,Steam 可能会采取措施阻止您的程序/机器人使用此操作。
服务器很可能需要 session 数据、特定 cookie headers、人类用户代理等,这样机器人将无法上传。
编辑:
勾选 robots.txt:
User-agent: *
Disallow: /actions/
Disallow: /linkfilter/
Disallow: /tradeoffer/
Disallow: /trade/
Disallow: /email/
Host: steamcommunity.com
您显然不允许在您的程序中使用 /actions/ 路由,Steam 强制执行此规则。