Saltar para: Posts [1], Pesquisa [2]

SAPO developers blog

SAPO developers blog

SAPO Developer Network v2.0

Janeiro 10, 2011

jac

Em 2009 foi criada a primeira versão da SAPO Developer Network, um desdobrável com alguns dos serviços do SAPO.

 

Recentemente repetimos o esforço e lançamos uma nova versão:

 

SAPO Developer Network 2010

 

Para além da reorganização da rede foi também realizado um trabalho na área dos desdobráveis; a versão deste ano abre mais facilmente bastando apenas puxar duas pontas do folheto.

 

A SAPO Developer Network v2.0 foi distribuída no Codebits 2010, mas a versão em pdf já se encontra online aqui.

SAPO Developer Network, versão de Dezembro de 2009

Janeiro 18, 2010

jac

Recentemente criámos a SAPO Developer Network, um desdobrável (890mm x 585mm) com alguns dos serviços do SAPO para melhor os dar a conhecer ao público do Codebits.

 

 

Para quem não esteve no Codebits, a versão em pdf já se encontra online (3M).

 

Segue-se agora um trabalho de análise para decidir quais os serviços a incluir (faltam muitos) e quais os que poderão ter que ser removidos por uma questão de espaço. A próxima versão deverá surgir num futuro próximo.

Bindings para o PunyURL

Julho 28, 2009

jac

Existem já bindings para o PunyURL em Perl e em PHP.

 

Em Perl, a distribuição WWW::Shorten::PunyURL permite criar links comprimidos de uma forma simples e rápida:

    use WWW::Shorten::PunyURL;

    my $punyurl = WWW::Shorten::PunyURL->new( url => $long_url );
    my $short_url = $punyurl->shorten;

É também possível, a partir de um url comprimido, aceder à sua versão original:

    my $punyurl = WWW::Shorten::PunyURL->new( url => $short_url );
    my $long_url = $punyurl->long;

my $long_url = $punyurl->long;

 

Em PHP, a classe PunyURL oferece-nos o comportamento homónimo:

    <?php

    require_once("punyurl.class.php");

    $shorten=PunyURL::short("http://sapo.pt");
    $original=PunyURL::long("http://b.qz.sl.pt");

    echo 'Puny URL: '.$shorten['puny']."<br>";
    echo 'ASCii URL: '.$shorten['ascii']."<br>";
    echo 'Preview URL: '.$shorten['preview']."<br><br>";
    echo 'Original URL: '.$original['url'];

    ?>

Novo SAPO Mapas

Julho 15, 2009

jac

O SAPO lançou ontem a nova versão do SAPO Mapas.

 

Esta nova versão, para além de ter um completo redesign, possui ainda novas funcionalidades como visitas virtuais, fotografias panorâmicas de 360º, relevo e curvas de nível.

 

 

Os pontos de interesse também foram melhorados, quer em qualidade quer em quantidade. É agora possível ver, sobre o mapa, informação como o trânsito (em tempo real), as condições climatéricas, farmácias, centros comerciais, cinemas, jardins, monumentos, praças de táxi, bombas de gasolina, etc.

 

 

A nova plataforma vem também com uma nova API, com documentação em português e inglês.

 

Eis uma forma simples e rápida de incluir um mapa numa página:

 

    <div id='mapDiv'></div>
    <script type="text/javascript" src="https://js.sapo.pt/Snippets/Maps.js?lat=40.30&lon=-9.09&zoom=5&height=400&width=980&divid=mapDiv">
    </script>

Mais exemplos na documentação do serviço e mais informação sobre a plataforma no blog do SAPO Mapas.

SAPO Saber via Open Search

Junho 08, 2009

jac

O SAPO Saber possui um interface Open Search em http://services.sapo.pt/Metadata/Service/Knowledge.

 

Acedendo, por exemplo, a http://services.sapo.pt/Knowledge/OpenSearch?search=tempo, recebemos uma lista de todas as páginas começadas por "tempo" em formato JSON:

    [
	    "tempo",
	    [
		    "Tempo",
		    "Tempo-espaço",
		    "Tempo-luz",
		    "Tempo-quente",
		    "Tempo (Marvel Comics)",
		    "Tempo (clarificação)",
		    "Tempo (clima)",
		    ...
        ]
    ]

Podemos também requisitar mais informação sobre uma página específica.

 

A título de exemplo, http://services.sapo.pt/Knowledge/Query?prop=info&titles=Tempo (clarificação)&format=xml:

    <api>
        <query>
            <pages>
                <page pageid="1058864" ns="0" title="Tempo (clarificação)" touched="2008-08-22T09:01:45Z" lastrevid="8103500"/>
            </pages>
        </query>
    </api>

Para aceder ao conteúdo de uma página, basta-nos aceder a algo como http://services.sapo.pt/Knowledge/Query?action=query&prop=revisions&titles=espaço-tempo&rvprop=timestamp|user|comment|content:

{
    "query": {
        "normalized": [{
            "from": "espaço-tempo",
            "to": "Espaço-tempo"
        }],
        "pages": {
            "10803": {
                "pageid": 10803,
                "ns": 0,
                "title": "Espaço-tempo",
                "revisions": {
                    "7583830": {
                        "revid": 7583830,
                        "pageid": 10803,
                        "oldid": 7583742,
                        "user": "Admin",
                        "timestamp": "2008-08-20T16:35:20Z",
                        "comment": "Actualização a partir de pt.wikipedia.org",
                        "*": "Em [[física]], '''espaço-tempo''' é o [[sistema de coordenadas]] utilizado como base para o estudo da [[relatividade especial]] e [[relatividade geral]].\nO [[tempo]] e o [[espaço]] [[dimensão_(matemática)|tridimensional]] são concebidos, em conjunto, como uma ..."
                    }
                }
            }
        }
    }
}

A descrição completa do serviço encontra-se disponível em http://services.sapo.pt/Metadata/Service/Knowledge.

Informação de Trânsito via Open Search

Junho 02, 2009

jac

Update: este serviço deixou de estar disponível.

 

Em http://services.sapo.pt/Metadata/Service/Traffic, o SAPO disponibiliza um serviço Open Search com informações de trânsito em Portugal.

 

Acedendo a http://services.sapo.pt/Traffic/GeoRSS podemos subscrever uma feed RSS com informação relevante e actual sobre o estado do trânsito em várias zonas do país: 

    <?xml version="1.0" encoding="utf-8"?>
        <rss version="2.0" xmlns:georss="http://www.georss.org/georss" xmlns:iptrss="http://www.infoportugal.pt/iptrss">
            <channel>
                <title>Informações de Trânsito</title>
                <link>http://www.infoportugal.pt</link>
                <description>Trânsito</description>
                <item>
                    <title>A3 (Águas Santas - Circunvalação)</title>
                    <category>2</category>
                    <link>http://www.infoportugal.pt</link>
                    <guid isPermaLink="false">10212-2</guid>
                    <pubDate>Tue, 02 Jun 2009 09:36:00 +0100</pubDate>
                    <description>Trânsito lento na A3 no sentido Valença - Porto entre o nó de Águas Santas e o nó da Circunvalação.</description>
                    <iptrss:location localidade="Pedrouços" concelho="Maia" distrito="Porto">
                    </iptrss:location>
                    <iptrss:endDate>Tue, 02 Jun 2009 10:36:00 +0100</iptrss:endDate>
                    <iptrss:segmentId>213060004822</iptrss:segmentId>
                    <georss:point>41.19173813 -8.59277439</georss:point>
                </item>
                ...
        </channel>
    </rss>

 

Um exemplo de utilização deste serviço é a Web App para iPhone Trânsito, que entre outras funcionalidades disponibiliza esta mesma informação:

 

 

 

A descrição do serviço encontra-se em http://services.sapo.pt/Metadata/Service/Traffic.

 

Update: este serviço deixou de estar disponível.

GIS - Geographical Information System

Maio 18, 2009

jac

Update: este serviço deixou de estar disponível.

 

Uma área forte no SAPO é a área de GIS.


Em http://services.sapo.pt/Metadata/Service/GIS é disponibilizado um Web Service GIS.

Podemos, por exemplo, começar por aceder a uma lista de distritos ordenados por id, em http://services.sapo.pt/GIS/GetDistrictsSortedById?includeMunicipalities=0

    <GetDistrictsSortedByIdResponse>
        <GetDistrictsSortedByIdResult>
            <District>
                <DistrictId>01</DistrictId>
                <DistrictName>Aveiro</DistrictName>
                <Latitude>40.64392</Latitude>
                <Longitude>-8.6422205</Longitude>
                <Municipalities/>
            </District>
            <District>
                <DistrictId>02</DistrictId>
                <DistrictName>Beja</DistrictName>
                <Latitude>38.0149956</Latitude>
                <Longitude>-7.86307573</Longitude>
                <Municipalities/>
            </District>
            ...
        </GetDistrictsSortedByIdResult>
    </GetDistrictsSortedByIdResponse>

Tendo o id do distrito desejado, podemos então aceder a mais informação sobre o mesmo, em http://services.sapo.pt/GIS/GetMunicipalitiesByDistrictIdSortedById?districtId=01.

Podemos agora aceder, entre outra informação, a uma lista de POIs (Point Of Interest) do distrito em questão: http://services.sapo.pt/GIS/GetPOIByDistrictId?districtId=01.

Como exemplo de uma funcionalidade diferente, a recolha de informação através de um código postal: http://services.sapo.pt/GIS/GetLocationByZipCode?zipCode=1000100

    <GetLocationByZipCodeResponse>
        <GetLocationByZipCodeResult>
            <CountryId>PT</CountryId>
            <CountryName>Portugal</CountryName>
            <DistrictId>11</DistrictId>
            <DistrictName>Lisboa</DistrictName>
            <MunicipalityId>1106</MunicipalityId>
            <MunicipalityName>Lisboa</MunicipalityName>
            <ParishId>110644</ParishId>
            <ParishName>São Jorge de Arroios</ParishName>
            <Latitude>38.73112</Latitude>
            <Longitude>-9.137293</Longitude>
            <Metadata/>
        </GetLocationByZipCodeResult>
    </GetLocationByZipCodeResponse>

O serviço é bastante completo e possui imensa informação.

A descrição completa do serviço encontra-se disponível em http://services.sapo.pt/Metadata/Service/GIS.

 

Update: este serviço deixou de estar disponível.

Web Service da plataforma SAPO Vídeos

Maio 12, 2009

jac

A plataforma de Vídeos do SAPO disponibiliza um Web Service em http://services.sapo.pt/Metadata/Service/Videos.

Este serviço suporta operações como criação de novos utilizadores (CreateUser), gestão de vídeos, realizando operações como a adição (AddVideo) ou remoção (DeleteVideo) de conteúdo, navegação, etc.

Existem ainda operações relacionadas com categorias, playlists e outras funcionalidades.

A descrição completa do serviço encontra-se em http://services.sapo.pt/Metadata/Service/Videos.

Blogs em Open Search

Maio 04, 2009

jac

O serviço de blogs do SAPO encontra-se disponível em https://blogs.sapo.pt/.

 

A plataforma possui já mais de 250,000 blogs e alguns milhões de posts.

 

Como não podia deixar de ser, na plataforma de serviços do SAPO disponibilizamos um interface em Open Search para uma mais eficaz interacção com estes blogs.

 

Entre as várias operações que podemos realizar encontram-se, por exemplo:

É também possível fazer gestão de posts e comentários através deste interface.

 

A descrição completa do serviço encontra-se em http://services.sapo.pt/Metadata/Service/Blogs.

Geração de código e integração com outros serviços SAPO

Abril 27, 2009

jac

Para uma mais simples integração com os vários Web Services do SAPO, um dos serviços que disponibilizamos é o CodeGeneration.

 

Acedendo à página de um serviço SAPO com um contrato WSDL, encontramos à direita da página uma caixa com links para a geração de código em várias linguagens.

 

 

Tal permite acelerar uma integração com qualquer um destes serviços.

 

As linguagens suportadas são, actualmente, C#, Visual Basic, Java, PHP, Perl, Python, Ruby e JavaScript.

 

A título de exemplo, eis a geração de código PHP para o Web Service Holiday.

 

O serviço encontra-se disponível em http://services.sapo.pt/Metadata/Service/CodeGeneration.

Mais sobre mim

Subscrever por e-mail

A subscrição é anónima e gera, no máximo, um e-mail por dia.

Arquivo

  1. 2012
  2. J
  3. F
  4. M
  5. A
  6. M
  7. J
  8. J
  9. A
  10. S
  11. O
  12. N
  13. D
  1. 2011
  2. J
  3. F
  4. M
  5. A
  6. M
  7. J
  8. J
  9. A
  10. S
  11. O
  12. N
  13. D
  1. 2010
  2. J
  3. F
  4. M
  5. A
  6. M
  7. J
  8. J
  9. A
  10. S
  11. O
  12. N
  13. D
  1. 2009
  2. J
  3. F
  4. M
  5. A
  6. M
  7. J
  8. J
  9. A
  10. S
  11. O
  12. N
  13. D