Perhaps I repeat this question, but I tried it for the first time, and I can not find anything like my situation.
I am coding in C # and using JSON.NET to json deserialize. The json file comes from twitter in response to this GET request:
https://api.twitter.com/1/statuses/home_timeline.json?include_entities=true
Json is a list of the last 20 tweets (json objects) from a given user timeline, and the format of a single json object is as follows:
{ "created_at": "Thu Sep 20 10:25:39 +0000 2012", "id": 248729631476314100, "id_str": "248729631476314112", "text": "Ask the experts and learn what new with v.2.2 at at #MongoDBPune (http://t.co/o5BA7zd6) and #MongoDBBangalore (http://t.co/7q3E2MBq)", "source": "<a href=\"http://www.socialrithmic.com\" rel=\"nofollow\">Socialrithmic</a>", "truncated": false, "in_reply_to_status_id": null, "in_reply_to_status_id_str": null, "in_reply_to_user_id": null, "in_reply_to_user_id_str": null, "in_reply_to_screen_name": null, "user": { "id": 18080585, "id_str": "18080585", "name": "mongodb", "screen_name": "MongoDB", "location": "", "url": "http://mongodb.org/", "description": "High-performance, open source, schema-free document-oriented database | www.facebook.com/MongoDB", "protected": false, "followers_count": 24999, "friends_count": 16, "listed_count": 1582, "created_at": "Fri Dec 12 17:21:18 +0000 2008", "favourites_count": 6, "utc_offset": -18000, "time_zone": "Eastern Time (US & Canada)", "geo_enabled": true, "verified": false, "statuses_count": 1669, "lang": "en", "contributors_enabled": false, "is_translator": false, "profile_background_color": "529747", "profile_background_image_url": "http://a0.twimg.com/profile_background_images/619655093/767dji3m3k684nza7w9z.png", "profile_background_image_url_https": "https://si0.twimg.com/profile_background_images/619655093/767dji3m3k684nza7w9z.png", "profile_background_tile": false, "profile_image_url": "http://a0.twimg.com/profile_images/2452709870/wo2h8r0qy8d5lsxe5lgd_normal.png", "profile_image_url_https": "https://si0.twimg.com/profile_images/2452709870/wo2h8r0qy8d5lsxe5lgd_normal.png", "profile_link_color": "43B02A", "profile_sidebar_border_color": "829D5E", "profile_sidebar_fill_color": "99CC33", "profile_text_color": "3E4415", "profile_use_background_image": true, "default_profile": false, "default_profile_image": false, "following": true, "follow_request_sent": null, "notifications": null }, "geo": null, "coordinates": null, "place": null, "contributors": null, "retweet_count": 1, "entities": { "hashtags": [ { "text": "MongoDBPune", "indices": [ 55, 67 ] }, { "text": "MongoDBBangalore", "indices": [ 95, 112 ] } ], "urls": [ { "url": "http://t.co/o5BA7zd6", "expanded_url": "http://soc.ai/ZV", "display_url": "soc.ai/ZV", "indices": [ 69, 89 ] }, { "url": "http://t.co/7q3E2MBq", "expanded_url": "http://soc.ai/ZW", "display_url": "soc.ai/ZW", "indices": [ 114, 134 ] } ], "user_mentions": [] }, "favorited": false, "retweeted": false, "possibly_sensitive": false
}
I use this code to get a list (deserialized):
List<JsonObject> list = Newtonsoft.Json.JsonConvert.DeserializeObject<List<JsonObject>>(response);
where "response" contains my json. When I inserted a breakpoint and observed json objects inside the "list", I found the following:
{"created_at": "Thu Sep 20 10:25:39 +0000 2012", "id": 248729631476314100, "id_str": "248729631476314112", "text": "Ask the experts and find out what's new from v.2.2 on #MongoDBPune (http://t.co/o5BA7zd6) and #MongoDBBangalore (http://t.co/7q3E2MBq), "source": "Socialrithmic", "truncated": false, "in_reply_to_status_id": null, " in_reply_to_status_id_str ": null," in_reply_to_user_id ": null," in_reply_to_user_id_str ": null," in_reply_to_screen_name ": null," user ": [[[]], [[]], [[]] [[] ]], [[]], [[]], [[]], [[]], [[]], [[]], [[]], [[]], [[]], [[ ]], [[]], [[]], [[]], [[]], [[]], [[]], [[]], [[]], [[]], [[ ]], [[]], [[]], [ []], [[]], [[]], [[]], [[]], [[]], [[]], [[]], [[]], [[]]], "geo": null, "coordinates": null, "place": null, "contributors": null, "retweet_count": 1, "entities": [[[[[[[]], [[[], [] ]]], [[[]], [[[], []]]]]], [[[[[]], [[]], [[]], [[[], []]] ], [[[]], [[]], [[]], [[[], []]]]]] [[]]], "favorited": false , "retweeted": false, "possibly_sensitive": false}
I am going to collect ALL hashtags from all 20 json objects. Essentially, I need to navigate inside objects in hashtags in text. But, as seen above, deserialization is only partial. This is not a deserialization of any embedded materials.
How to fix it? Please, help!