You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何让Node.js中Axios请求toloka.to的效果与Python Requests一致?

Toloka.to登录请求Cookie异常:Python Requests成功但Node.js Axios无效

我是toloka.to注册用户,尝试向https://toloka.to/login.php发送携带必要参数的POST请求,以获取后续可用的关键Cookie,但遇到了跨语言实现的不一致问题。

Python Requests实现结果

使用Python Requests库可以成功完成登录,返回的HTML包含登录用户专属元素,获取到的Cookie如下:

{'toloka_1218067_tt': '1708023715', 'toloka_1218067_f': 'a%3A0%3A%7B%7D', 'toloka_1218067_uf': '0', 'toloka_1218067_u': 'a%3A0%3A%7B%7D'}

对应的实现代码:

import requests

session = requests.Session()

login = session.post(
    f"https://toloka.to/login.php",
    {
        "username": "SomeUser",
        "password": "SomePassword",
        "autologin": "on",
        "ssl": "on",
        "login": "Вхід",
    },
)

print(login.cookies.get_dict())

getDataWithCredential = session.get(
    f"https://toloka.to/tracker.php?nm=frieren"
)

with open('xd.html', 'w', encoding='utf-8') as file:
    file.write(login.text)

with open('xd2.html', 'w', encoding='utf-8') as file:
    file.write(getDataWithCredential.text)

Node.js Axios实现结果

使用Node.js Axios发送相同逻辑的请求时,得到的Cookie如下:

['toloka_data=a%3A2%3A%7Bs%3A11%3A%22autologinid%22%3Bs%3A0%3A%22%22%3Bs%3A6%3A%22userid%22%3Bi%3A-1%3B%7D; expires=Fri, 14-Feb-2025 19:29:42 GMT; Max-Age=31536000; path=/; secure; httponly',
      'toloka_sid=c4ab745ccad638caadda384685c38e36; path=/; secure; httponly',
      'toloka___lastvisit=1708025382; expires=Fri, 01-Jan-1971 00:00:00 GMT; Max-Age=-1676489382; path=/; secure',
      'toloka___tt=1708025382; expires=Fri, 14-Feb-2025 19:29:42 GMT; Max-Age=31536000; path=/; secure',
      'toloka___f=a%3A0%3A%7B%7D; expires=Fri, 14-Feb-2025 19:29:42 GMT; Max-Age=31536000; path=/; secure',
      'toloka___uf=0; expires=Fri, 14-Feb-2025 19:29:42 GMT; Max-Age=31536000; path=/; secure',
      'toloka___u=a%3A0%3A%7B%7D; expires=Fri, 14-Feb-2025 19:29:42 GMT; Max-Age=31536000; path=/; secure']

对应的实现代码:

const formData = new FormData();
formData.append('username', 'SomeUser');
formData.append('password', 'SomePassword');
formData.append('autologin', 'on');
formData.append('ssl', 'on');
formData.append('login', 'Логін');

const data = await axios.post('https://toloka.to/login.php', formData, { withCredentials: true });
const cookies = data.headers['set-cookie'];

console.log(cookies);
console.log(data.data);

关键问题点

  • 浏览器登录后仅保留toloka_sid即可正常发起请求,但Python实现中无此Cookie仍能正常工作
  • Node.js实现中所有Cookie均无效,包括toloka_sid
  • Python中的Cookie命名格式为toloka_1218067_tt,Node.js中为toloka___tt,尝试将Node.js的Cookie后缀替换为对应数字后仍然无效

内容的提问来源于stack exchange,提问作者Bohdan

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.29 19:10:32