.NET

3 ago, 2009

Classe que mostrar dados da Conta do Twitter

Publicidade

Olá a todos, nesse artigo vamos aprender a criar um exemplo simples de como mostrar os dados de uma conta do twitter em sua página, resgatando informações de um XML:

O link é Simples: http://twitter.com/users/show/imasters.xml

Usando um Objeto para ler o XML e um layout agradável, chegamos a essa conclusão:

Criei uma classe chamada UserTwitter, dentro criei uma sub chamada LerXML() para fazer todo o processo:

página default.class.asp

class UserTwitter
public sub LerXML()
set objXMLDOM = server.createObject("MSXML2.DOMDocument.3.0")
objXMLDOM.async = false
objXMLDOM.setProperty "ServerHTTPRequest", true
objXMLDOM.validateOnParse = false
objXMLDOM.load("http://twitter.com/users/show/"request.queryString("username")".xml")

set raiz = objXMLDOM.getElementsByTagName("*")

OBS: coloquei o request.queryString para ter um resgate do nome do usuário mais objetivo!

E, um laço de repetição para pegar a posição de cada nó e para cada nome no XML, assim:

for i = 0 to raiz.length - 1
select case (raiz.item(i).nodeName)
case ("name") : tw.nome = raiz.item(i).text
case ("screen_name") : tw.screen_name = raiz.item(i).text
case ("location") : tw.location = raiz.item(i).text
case ("profile_image_url") : tw.profile_image_url = raiz.item(i).text
case ("url") : tw.url = raiz.item(i).text
case ("followers_count") : tw.followers_count = raiz.item(i).text
case ("friends_count") : tw.friends_count = raiz.item(i).text
case ("favourites_count") : tw.favourites_count = raiz.item(i).text
case ("statuses_count") : tw.statuses_count = raiz.item(i).text
case ("time_zone") : tw.time_zone = raiz.item(i).text
case ("profile_background_image_url") : tw.profile_background_image_url = raiz.item(i).text
case ("profile_background_color") : tw.profile_background_color = ucase(raiz.item(i).text)
case ("profile_text_color") : tw.profile_text_color = ucase(raiz.item(i).text)
case ("profile_link_color") : tw.profile_link_color = ucase(raiz.item(i).text)
case ("profile_sidebar_fill_color") : tw.profile_sidebar_fill_color = ucase(raiz.item(i).text)
case ("profile_sidebar_border_color") : tw.profile_sidebar_border_color = ucase(raiz.item(i).text)
end select
next

No código dentro do CASE coloquei o nome das tags do XML. fazendo o seguinte:

Quando encontrar o “nodeName”“tal”, mostre “tal”case, como uma condicional IF

raiz.item(i).nodeName

Observando também que uso essa propriedade do XML (.text) para imprimir o que há na tag.

raiz.item(i).text

Criando um objeto e chamando ele na tela:

set tw = new UserTwitter
tw.LerXML()

criei uma página chamada default.asp

< Language="VBScript" >
<!--include file="Default.class.asp"-->

… o restante do código

Para ter acesso o código completo e o layout clique aqui para baixar