所以加载的一切,https://www.instagram.com/explore/tags/plebiscito/?__a=1
返回一堆JSON的启动过类似
{"tag": {"media": {"count": 18926, "page_info": {"has_previous_page": false, "start_cursor": "1404693250132394506", "end_cursor": "J0HWFCHOgAAAF0HWE8dgwAAAFiYA", "has_next_page": true}, "nodes": [{"code": "BN-eRGQh8IK", "dimensions": {"width": 750, "height": 538}, "comments_disabled": false, "owner": {"id": "311016089"}, "comments": {"count": 1}, "caption": "#plebiscito", "likes": {"count": 11}, "date": 1481672506, "thumbnail_src": "https://scontent.cdninstagram.com/t51.2885-15/s640x640/sh0.08/e35/c147.0.750.750/15338447_1774364399481982_8165079596765544448_n.jpg?...
解析JSON后,你可以抓住end_cursor
:
end_cursor = data['tag']['media']['page_info']['end_cursor']
然后检索下一个URL。
我无法在几秒钟内手动完成列表的末尾,因此我不知道最后的end_cursor
会发生什么。但我注意到has_next_page
键。也许这样的话,那么:
data = json.loads(however_youre_getting_the_data('https://www.instagram.com/explore/tags/plebiscito/?__a=1'))
end_cursors = []
while data['tag']['media']['page_info']['has_next_page']:
end_cursors.append(data['tag']['media']['page_info']['end_cursor'])
data = json.loads(however_youre_getting_the_data('https://www.instagram.com/explore/tags/plebiscito/?__a=1&max_id={}'.format(end_cursors[-1])))
我想你提到的URL返回的数据的一些更多细节将有助于得到这个问题的答案。你从哪里得到'end_cursor'?我根本没有看到它的参考。请更新问题。 –
如果您发现自己,请查看: “{”tag“:{”media“:{”count“:18924,”page_info“:{”has_previous_page“:false,”start_cursor“:”1404546685791413124“,”end_cursor“: XXXXXXXXXXXXXXXXXXXX“ – Kalek
一致认为这很容易得到,但最好让问题更具自包含性。 –