Java exportar valor

7 respostas
T

Olá amigos… gostaria de saber se alguem pode me ajudar (pesquise em varios lugares mas nao achei nada)
queria fazer em java desktop (nao em javascript) um programa q localiza um campo de texto em uma html e retornasse o valor que que quisesse. exemplo.

1- quero q abre a pagina
http://translate.google.com.br/

2-ache a ID do q é campo texto
id=“source”

3- e preecha o campo textarea
value=“happy”

codigo para ler html e salvar em txt

package br.mb.tutorialCapturaPaginaWeb;

import java.io.*;
import java.net.MalformedURLException;
import java.net.URL;

public class LoadPage {
    public void getPage(URL url, File file) throws IOException {
        BufferedReader in = 
                new BufferedReader(new InputStreamReader(url.openStream()));

         BufferedWriter out = new BufferedWriter(new FileWriter(file));

        String inputLine;

        while ((inputLine = in.readLine()) != null) {
            // Imprime página no console
            System.out.println(inputLine);
            // Grava pagina no arquivo
            out.write(inputLine);
            out.newLine();
        }

        in.close();
        out.flush();
        out.close();
    }

    public static void main(String[] args) {
        URL url = null;
        File file = new File("C:\\TutorialArquivos\\page.html");
        try {
            url = new URL("http://ondetrabalhar.com/vagas/1399/arquiteto-java");
            new LoadPage().getPage(url, file);
        } catch (MalformedURLException e) {
            e.printStackTrace();
        } catch (Exception e) {
            e.printStackTrace();
        }
    }
}

creditos do code : Marcio Ballem
http://mballem.wordpress.com/2011/07/01/capturando-html-de-pagina-web-com-java/

7 Respostas

drsmachado

E qual a dificuldade?
Com um BufferReader você lê, transforma em string e procura pelo indexOf("") aí é só ler a substring…

T

drsmachado como vou ler essa substring???
tipo… pegar a html e localizar o textarea nao vai ser problema, agora inserir um dado no campo textarea q nao tenho ideia como fazer

drsmachado

Ah, agora que entendi a tua necessidade.
Pois bem, essa url é externa?
Se sim (consideremos o google.com.br), ele só aceitará o valor se passá-lo como parâmetro.

http://www.google.com.br/?q=java

Vai abrir a página do google com a palavra java no textbox de pesquisa.

T

drsmachado existe outra forma sem ser direcionando a URL? pois em alguns links nao da certo… como por exemplo consultar um CEP
http://www.correios.com.br/

drsmachado

A tecnologia utilizada é struts 1.
Por isso existe uma certa limitação.
Se a tua necessidade é buscar cep/endereço, os correios possuem um serviço para isto.
É um webservice.
Acho que eles fornecem mais informações.

T

nao é bem só os correios… mas tbm iria utilizar

o que realmente quero é inserir dados para envio de sms gratis (para fins de marketing) que é disponibilizado pelo site da “oi”, e ai ficaria somente o catpcha para digitar

drsmachado

Cara, o problema é que a maioria dos sites são server side. Ou seja, tudo o que rola neles é realizado no servidor. O que aparece para o usuário é apenas o resultado dos processamentos.
A não ser que você conheça os detalhes da construção do site da oi, fica bem complicado fazer algo assim.
No caso do google funciona por que a captura dos dados é feita no lado do cliente.

Criado 12 de dezembro de 2011
Ultima resposta 12 de dez. de 2011
Respostas 7
Participantes 2