Login Registrati
Stai vedendo 7 articoli - dal 1 a 7 (di 7 totali)
  • Autore
    Articoli
  • #48803 Score: 0 | Risposta

    Raffaele53
    Partecipante
      23 pts

      Ciao a tutti, anni fà col Vostro aiuto sono riuscito a creare una Macro, la quale immetteva un numero di telefono in una pagina-web e se questo era valido scriveva i risultati su un foglio Excel. Non funziona più, cambiata la grafica e presumo che abbiano cambiato pure il "nome" dell'elemento.
      Errore in .....Doc.getElementById("numerotelefono").Value = Num
      Nell'allegato esiste un numero di Tel + la pagina Web
      Serve per lavoro. Grazie mille

      PS. Esiste la possibilita di conoscere l'elemento (utilizzando un Browser "posizionato sulla casella", mouse-destro "Analizza proprieta accessibilita") ???

      Allegati:
      You must be logged in to view attached files.
      #48805 Score: 0 | Risposta

      Raffaele53
      Partecipante
        23 pts

        Ho notato che cambiando l'indirizzo WEB da http://www.agcom...... in http://old.agcom..... Funziona nuovamente, spero vivamente di trovare il motivo

        #48813 Score: 1 | Risposta

        vecchio frac
        Senior Moderator
          272 pts

          Raffaele53 ha scritto:

          Errore in .....Doc.getElementById("numerotelefono").Value = Num

          Ti sei risposto da solo... e come chiedi giustamente, bisogna trovare il modo di rintracciare l'elemento dentro la pagina.

          In Chrome, F12 >> Tasto destro sull'elemento della pagina web >> Ispeziona

          Potrebbe aiutare, immagino.

          #48820 Score: 0 | Risposta

          Raffaele53
          Partecipante
            23 pts

            Ciao vecchio frac
            Uso Mozilla + Analizza e presumo che sia la stessa cosa per visualizzare HTML.
            L'elemento sembra non sia cambiato = numerotelefono, mà non capisco l'errore dove sia e ....perchè old.agcom funziona

            Da https://www.agcom.it/.........
            <input id="numerotelefono" class="form_input" name="numerotelefono" type="text" value="123456789" style="box-shadow: none; width: 100% !important;">

            Da https://old.agcom.it/.........
            <input id="numerotelefono" class="form_input" name="numerotelefono" type="text" value="123456789" style="box-shadow: none; width: 100% !important;">

            #48835 Score: 0 | Risposta

            Raffaele53
            Partecipante
              23 pts

              Non sono una cima (mettendo il numero manualmente), col VBA è un'errore unico. In HTML, qualche riga sopra c'è >>>form action="https://old.agcom.it/...", presumo che abbiano creato una nuova grafica, reindirizzando alla ex pagina=OLD (dove funziona tutto)
              Mi piacerebbe che un'esperto che leggerà il post mi dicesse la Sua opinione.
              Un saluto

              Ps. Solo per divertimento questo VBA sul mio allegato (Riferimenti già fatti) per vedere la Gioconda nuda

              Sub Casella_Wikipedia()
              Dim IE As New SHDocVw.InternetExplorer
              Dim Doc As MSHTML.HTMLDocument
              With IE
                  .Navigate "https://it.wikipedia.org/wiki/Pagina_principale"
                  .Visible = True
                  Do While .Busy Or .ReadyState <> READYSTATE_COMPLETE
                      DoEvents
                  Loop
              Set Doc = .Document
              Doc.getElementById("searchInput").Value = "Gioconda nuda"
              Doc.getElementById("searchButton").Click
              '.Quit 'ATTENZIONE.........dovrete chiuderlo IE manualmente
              End With
              End Sub

               

              #49025 Score: 0 | Risposta

              maxpit
              Partecipante
                7 pts

                Buonasera Raffaele53,

                l'elemento che ricerchi per inserire il numero di telefono esiste ancora con lo stesso nome ma parte della pagina Web è stata inserita in un frame perciò bisogna gestire la situazione.

                Con Selenium passo il controllo al frame e dopo aver eseguito delle istruzioni ritorno al chiamante con il seguente codice:

                            .SwitchToFrame .FindElementsByTag("iframe")(1)        ' sposto il controllo sul frame
                            .FindElementByCss("#numerotelefono").SendKeys "1234"  ' inserisco il numero di telefono
                            [...]                                                 ' altre istruzioni
                            .SwitchToParentFrame                                  ' ritorno al chiamante
                

                Buona serata ancora.

                #49026 Score: 0 | Risposta

                Raffaele53
                Partecipante
                  23 pts

                  Ciao maxpit
                  Vorrei la metà della metà, della metà, della metà del Tuo sapere.
                  Premessa, 4 anni fà non conoscevo Selenium e mi rendo conto che tra poco tempo scadrà IE. Sempre che l'azienda "APPROVI" l'uso, ieri sera ho preparato una piccola base e mi sono fermato subito al "Click" (non sono esperto), per cortesia (se) puoi aiutarmi. Vorrei specificare che inserendo un numero di telefono, premendo il "cerca", SE non trova nulla = "Non esiste", se invece trova corrispondenze "questi elementi" potrebbero anche essere su due/tre righe. Mi basterebbe che mi dici i nomi degli "elementi" per estrare i dati.

                  Ps. Mi spieghi dove/come hai trovato l'elemento "iframe"? Grazie mille

                  Allegati:
                  You must be logged in to view attached files.
                Login Registrati
                Stai vedendo 7 articoli - dal 1 a 7 (di 7 totali)
                Rispondi a: Scraber da agcom
                Gli allegati sono permessi solo ad utenti REGISTRATI
                Le tue informazioni: