How to retrieve Twitter account followers

January 25th, 2011 | by | opensource, programmation, ruby

Jan
25

Follow nihed on Twitter

With Ruby, Imagination is your limit. Our example is a way to retrieve a list of followers for an account.
For this sample, I’m using the twitter Gem.

  1. $ sudo gem install twitter

Now, we can explore our code.
First we must call our libraries (Gem).

  1. require "rubygems"
  2. require "twitter"

Next, we should configure an OAuth connexion.

  1. Twitter.configure do |config|
  2.   config.consumer_key = "AAAA"
  3.   config.consumer_secret = "BBBB"
  4.   config.oauth_token = "CCCC"
  5.   config.oauth_token_secret = "DDDD"
  6. end

(AAAA,BBBB,CCCC and DDDD) values can be retrieved on http://dev.twitter.com/apps/new when you create a new application.
After, We must initialize some variables

  1. myfile = File.new("write.txt", "w")
  2. client = Twitter::Client.new
  3. count=0
  4. cursor1=-1
  • myfile: file that be used to create a cvs file
  • client: our connexion with twitter service
  • count: number of count retrieved
  • cursor1: twitter send 100 per 100 account, this variable is used to follow this list

Finally, We can launch our code

  1. while (cursor1 != 0) do
  2. result =client.followers("Account","cursor"=>"#{cursor1}")
  3. cursor1=result.next_cursor
  4. users=result.users
  5. puts count
  6.  users.each do |follower|
  7.    count+=1
  8.     myfile.puts "\"#{count}\",\"#{follower.name}\",\"#{follower.screen_name}\",\"#{follower.url}\",\"#{follower.followers_count}\",\"#{follower.location}\",\"#{follower.created_at}\",\"#{follower.description}\",\"#{follower.friends_count}\",\"#{follower.lang}\",\"#{follower.time_zone}\",\"#{follower.verified}\""
  9.  end
  10.  sleep(5)
  11. end

While, our cursor is not equal 0, we retrieve accounts information using the request followers parameters the name of the account and the position of the cursor. We update our variables and we store the result in the our CVS file.

2 Comments »

Shems FM sur iPhone

September 29th, 2010 | by | astuce, iphone, programmation

Sep
29

Shems FM sur iPhone

Le HTML5 est la dernière version offrant plusieurs nouvelles balises. l’une d’elle est la balise audio permettant de lire des fichiers ou flux audio. l’iPhone avec l’iOS 4 permet de lire beaucoup d’encodage mais malheureusement pas de WMA (utilisé par Mosaique FM et Jawhara FM). Hier, je me suis rendu compte que ce n’est pas le cas de Shems FM et j’ai réussi à mettre une petite démo disponible sur ce lien http://nihed.com/shems/
Sinon le code pouvant produire ce résultat est le suivant :

  1. <audio controls="controls">
  2.              <source src="http://radio.shemsfm.com:8080/shems">
  3. </audio>

Remarque : l’application n’est pas fonctionnelle sur le réseau 3G de bouygues Telecom.

5 Comments »

J2me et les SMS’s

June 14th, 2009 | by | geek, java, programmation

Jun
14

Avec les offres des SMS’s ilimités de Tunisie Telecom et Tunisiana, je me suis posé le problème s’il est possible de mettre en place une application mobile capable de généré un grand nombre de SMS pour une plage de numéro ou pour juste un numéro pour faire du spam.
Après quelques recherche, j’ai réussi à mettre au point un petit bout de code fonctionnel et qui permet d’offrir la possibilité d’envoyer un SMS et bien entendu, les options énuméré au début sont possibles.
Pour le développement, j’ai utilisé netbeans 6.7 RC2 sans aucun additif. J’ai commencé par la création d’un projet standard pour terminaux mobiles. et dans ma class principale, j’ai ajouté cette méthodes qui gère l’envoi des SMS.

    public String sendSms(String number, String message){
    String result = "Ok";
    try {
      //sets address to send message
      String addr = "sms://"+number;
      // opens connection
      MessageConnection conn = (MessageConnection) Connector.open(addr);
      // prepares text message
      TextMessage msg =
      (TextMessage)conn.newMessage(MessageConnection.TEXT_MESSAGE);
      //set text
      msg.setPayloadText(message);
      // send message
      conn.send(msg);
      conn.close();
    } catch (SecurityException se) {
        // probably the user has not allowed to send sms
        // you may want to handle this differently
        result = "Security Problem";
    } catch (Exception e) {
        result = "Unknown Problem";
    }
    return result;
  }

Ce qu’il faut retenir, est que cette méthode utilise comme argument le numéro de téléphone et la message à transmettre et renvoi une chaine de caractère avec les divers possibilité :

  • OK, pour une transmission réussite.
  • Security Problem, si l’application n’a pas le droit d’envoyer un SMS, d’ou une configuration du téléphone est nécaissère.
  • Unknown Problem, pour les cas de figure non pris en considération

Par la suite, une petite interace avec deux champs de saisis et un champ d’affichage de résultat.
L’implémentation de la commande OK, et l’ajout du bout du code suivant :

sol.setText(sendSms(number.getString(), message.getString()));

Petit test sur mon téléphone (Nokia 5800), fonctionnel, un message de securité s’affiche pour la première fois pour demander si vous voulez accorder la ressource SMS à l’application “oui” :) .

1 Comment »