2016-11-29 90 views
1

我正在開發一款應用程序,通過使用硒與python來從Instagram獲取圖像細節。如何獲取Instagram圖像詳細信息

driver.execute_script(SCROLL_TOP) 
driver.execute_script(SCROLL_BOTTOM) 

在結果中,所有張貼的圖片和文字說明可以從driver.page_source

可以得到但當我試圖獲得有關圖像的更多信息(例如,喜歡的號碼,圖像的發佈日期)。我需要訪問

<script type="text/javascript">window._sharedData = {...}</script> 

上一個代碼中的'...'是一個JSON塊。它包含前12個媒體的詳細信息。有沒有辦法讓我在window._shareData JSON塊中獲取所有圖像的細節?

謝謝你的建議

回答

4

看看my answer解決了你的問題,但用PHP。從URL

  1. 負載通過HTTP的JSON:無論如何,你可以做同樣的蟒蛇https://www.instagram.com/nasa/?__a=1(在任何公共用戶名替換nasa)。

  2. 從json獲取12個媒體詳細信息:user->media->nodes

  3. 從json獲取其他媒體信息:user->media->page_info。有has_next_page(布爾值)和end_cursor(整數)。使用它來獲取下一個12個媒體與網址https://www.instagram.com/nasa/?__a=1&max_id=[VALUE-FROM-end_cursor]

  4. 重複2-3。
+0

感謝您的回覆rNix,它完美的工作。我只是想知道我在哪裏可以找到關於'__a = 1'的在線文檔。我想我可以在查詢中添加更多的參數來從Instagram服務器獲取數據。是對的嗎? – r0ng

+1

@ r0ng我還沒有見過。但是我發現了一個用於查詢的intersting web端點(以獲得評論,關注者等)。看'update'部分http://stackoverflow.com/questions/40648546/how-can-i-get-a-list-of-followers-from-one-instagram-account/40761395#40761395 – rNix

+1

@ r0ng你可以使用Instagram的Web版本獲得更多關於查看瀏覽器控制檯的查詢示例。 – rNix