magento 网站上用于报废目的的帮助
我是个新人,如果有些术语看起来很奇怪,我很抱歉。 我正在尝试从使用 magento 和 cloudflare 的 Prolians 网站 https://www.prolians.fr/ 获取个人上下文中的数据。 问题是有些数据是动态呈现的。以及网站的一部分(每种产品的等效产品)
我发现有一个api调用叫做:getequivalentproducts
产品示例(gant de manutention handlite 200g opsialp):
产品链接: https://www.prolians.fr/gant-de-manutention-handlite-200g-opsialp702708.html
API调用: https://www.prolians.fr/equivalentproducts/widget/getequivalentproducts?sku=P702708&_=1726650753165
所以 sku 可以在产品页面 url 中找到,如果我没有理解错的话 _ 是时间戳
当我在 postman 中复制粘贴 api 调用的 url 时,它会返回包含我想要的 html 部分的 json。但如果我删除 _,它不会返回任何内容
然后我创建了一个脚本来使用动态生成的时间戳来查询 Api,但再次没有发生任何事情。我还尝试更改时间戳,仅添加或删除这样的数字上的一个:1726651065756,并且响应为空,仍然代码 200
时间戳 = int(time.time() * 1000) 我真的不知道从这里该怎么做,我尝试添加更多标题,但这不起作用。 也许有安全措施并限制机器人,但我只能访问我之前用浏览器访问过的页面产品中的数据
提前感谢大家的帮助:slight_smile:
我尝试使用 Python 为每个请求生成一个以毫秒为单位的新时间戳,以确保准确性
时间戳不是必需的,你只需要正确的标题(
x-requested-with: XMLHttpRequest
):
import requests
params = {
'sku': 'P702708'
}
headers = {
'x-requested-with': 'XMLHttpRequest'
}
url = "https://www.prolians.fr/equivalentproducts/widget/getequivalentproducts"
response = requests.get(url, params=params, headers=headers)
print(response.text)
*使用浏览器的时间戳时获得正确响应的原因可能是因为服务器正在缓存请求。