Mar 14 at 4:28 AM
Edited Mar 14 at 4:29 AM
|
Hi,
Is there any library to programatically download the twitter data into a GraphML provided by NodeXL library. If not, it will be great if anyone knows of such api which can do so.
Thanks
|
|
Coordinator
Mar 14 at 8:00 PM
|
We don't package that as a library, but the source code is available on NodeXL's Source Code tab at http://nodexl.codeplex.com/. The relevant code is in a project called "GraphDataProviders."
What exactly are you interested in? I don't know what you mean by "the Twitter data." NodeXL can import three types of Twitter networks: Search, User, and List. Are you interested in duplicating this functionality in your own application? If so, do you want your program to open up one of NodeXL's dialog boxes where a user can specify exactly what to include in the network (for example, what to search for in the Search network), or will your program just hard-code what should be included?
-- Tony
|
|
|
|
Hi Tony,
I am trying to learn NodeXL in order to create an app which is not having any dependency on Excel. I have a winform project in which I am trying to use the NodeXL libraries to draw a graph out of the fetched twitter results. Initially I have started with the Search Twitter API, and want that all the users related to top 50 discussions for any particular keyword search gets visible in form of Graph.
I want to reuse the features built in the NodeXL libraries and try to contribute back to the community with an app. My future plans are to integrate this feature in my own website NetMe. This is a non commercial website which does Twitter based analysis. Currently I have implemented Gephi for analyzing Facebook pages at http://netme.cloudapp.net/DataVisualization.aspx
I feel it will be great if there is a library created for Social media interaction, that will give more robustness to the existing project and encourage more developers to contribute to this forum.
Nabarun
|
|
Coordinator
Mar 15 at 6:52 PM
|
I think you can reuse NodeXL's Twitter library without too much difficulty. I'll include instructions for doing so in my next post. Please note the following:
-
I haven't actually tried doing this, but I think it should work.
-
The Twitter importers will be overhauled in an upcoming NodeXL release, which might be sometime in the next two weeks. Twitter is discontinuing the version of the Twitter API that NodeXL is using (see https://dev.twitter.com/blog/planning-for-api-v1-retirement ), and we need to adjust NodeXL accordingly. The main changes are that you will be required to authorize NodeXL to use your Twitter account, which is optional today, and that getting follows relationships will be extremely slow due to stricter rate limits that Twitter is imposing.
-
The changes will be internal to NodeXL's Twitter library. The public calls for getting Twitter networks from NodeXL will not change.
-- Tony
|
|
Coordinator
Mar 15 at 7:01 PM
Edited Mar 15 at 7:04 PM
|
To reuse NodeXL's Twitter network importers in another application:
-
Download the NodeXL source code.
-
Open NodeXL.sln in Visual Studio 2008 or 2010. If you are using Visual Studio 2010, let Visual Studio convert the solution.
-
In Solution Explorer, delete all projects except GraphDataProviders, ExcelTemplatePlugins, and Util.
-
Modify TwitterAccessToken.GetAccessTokenFilePath() to fit your application's needs. NodeXL stores Twitter's access token in a file so the user doesn't have to reauthorize with Twitter every time she imports a network.
-
Build the solution. The assembly you need will be at NodeXL\GraphDataProviders\bin\Debug\Smrf.NodeXL.GraphDataProviders.dll. Add a reference to this assembly to your own application.
-
In your application, create a TwitterSearchNetworkGraphDataProvider object, then call its TryGetGraphDataAsTemporaryFile(out String pathToTemporaryFile) method. That method opens a dialog for specifying what to include in the network, gets the network from Twitter, and stores the results in a GraphML file.
-- Tony
|
|
|
|
Thanks a ton Tony....
This is indeed helpful. Let me explore this more and then provide my feedback
|
|