首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何正确生成x-instagram-gis

如何正确生成x-instagram-gis
EN

Stack Overflow用户
提问于 2018-12-28 11:58:30
回答 2查看 1.6K关注 0票数 0

我用Python3.7编写了以下函数来生成x-instagram-gis。根据我对这个主题的研究,我认为我只需要rhx_gis和变量(id: profile_id,首先: int<50,after: end_cursor)来生成x-instagram-gis。

代码语言:javascript
复制
def generate_x_instagram_gis(rhx_gis, cursor, profile_id):
    params = {
        "id": profile_id,
        "first": 12,
        "after": cursor,
    }
    json_params = json.dumps(params, separators=(',', ':'))
    values = "{}:{}".format(rhx_gis, json_params)
    return hashlib.md5(values.encode('utf-8')).hexdigest()

运行以下内容应该返回:90bd6b662f328642477076d92d599064

代码语言:javascript
复制
rhx_gis = "7733066781d53e86a089eeb454c5446d"
cursor = "QVFBZWRqS0RnbGMtaXJhQzhlRW01R0I2YngtVXNQOGRTZzdHZEdseGcyVE1MdUxFYmYyY011Zkx6dFZtQUlsYWNvRl9DWnhtalpXZ2daSU5YQnFNTFBGRg=="
profile_id = "6822549659" #https://www.instagram.com/kimimatiasraikkonen/

print(generate_x_instagram_gis(rhx_gis, cursor, profile_id))

但是它返回:f5e1e4be6612701d43523d707e36672b

作为参考,我看了以下几个来源:

我不太清楚我在做什么不对,当我用我的整个程序运行这个程序时,它不起作用,这是在经过大量测试后导致问题的唯一部分。另外,我注意到在Python3.7和Python2.7上运行的MD5是不同的

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2018-12-29 02:42:57

我已经想明白了。

rhx_gis值是根据在标头中发送的用户代理计算的。我所获得的rhx_gis值是使用python检索的,该请求设置了自己的用户代理(或类似的内容),而我在Postman上看到的rhx_gis值是使用不同的用户代理(设置在邮递员上)创建的。

为了解决这个问题,我必须在python请求中设置与Postman相同的用户代理。

代码语言:javascript
复制
headers = {
    'User-Agent' : '' # user-agent here
} 
requests.get(url, headers=headers)
票数 0
EN

Stack Overflow用户

发布于 2019-01-05 05:55:57

Instagram似乎再次更新了API,并且更改了query_variable的格式。它看起来如下:

代码语言:javascript
复制
{
   "id":"25025320",
   "include_reel":true,
   "fetch_mutual":false,
   "first":13,       
   "after":"QVFDZV9udFJKbVk3OGNlOE1LeGx3V1g0aEUyNFNSQTFUenhWOFVkWktTVzdpdUJRSk9EQXY3Ym9QQXFwTWJEci1pYklhSHFGQU1PTnl6QmhZbGpjalplSQ=="
}
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/53958252

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档