Meddelande

Minska
No announcement yet.

Ladda ner TITLE taggen från en hemisida.

Minska
X
  • Filter
  • Klockan
  • Show
Clear All
new posts

  • Ladda ner TITLE taggen från en hemisida.

    [kod] Set objHTTP = Server.CreateObject("Microsoft.XMLHTTP")
    objHTTP.Open "GET", "http://hemsida.se/about/index.asp", False
    objHTTP.Send
    DIM strHTML
    strHTML = objHTTP.responseBody
    Set objHTTP = Nothing
    'strHTML = Unicode(strHTML)

    response.write strHTML[/kod]

    Detta i ett vanligt ASP dokument, fungerar givetvis inte, därav frågan. Vad är det för fel på Unicode!?

    Det blir ju rena kinesiskan...!! Rent bildligt!

  • #2
    responseBody innehåller väl hela dokumentet, du få väl hitta <title> med regexp inne i din strHTML? vad gör Unicode funktionen?
    "det går inte att lära en gammal norrlänning byta namn på irc" - gammalt kinesiskt uttryck

    Kommentera


    • #3
      vad gör Unicode funktionen?
      Ja, det var det jag undrade också...

      Det blir tecken som på många vis är förvillande likt kinesiska tecken!

      Skulle inte koden komma upp som klartext, så att jag med RegExp kan leta efter <title> -taggen?
      Det var dit jag ville komma...

      Kommentera


      • #4
        angelica skrev: Visa inlägg
        Ja, det var det jag undrade också...

        Det blir tecken som på många vis är förvillande likt kinesiska tecken!

        Skulle inte koden komma upp som klartext, så att jag med RegExp kan leta efter <title> -taggen?
        Det var dit jag ville komma...
        Beror på vad det är för typ av innehåll du försöker hämta ifrån.
        "det går inte att lära en gammal norrlänning byta namn på irc" - gammalt kinesiskt uttryck

        Kommentera


        • #5
          Prova att använda responseText istället för responseBody
          "Det finns tre sorters lögn; vanlig lögn, förbannand lögn och statistik" - Mark Twain

          Kommentera


          • #6
            Kod:
            Function getTitle(strText)
            	Set regEx = New RegExp
            		regEx.Global = True
            		regEx.IgnoreCase = true
            		regEx.Pattern = "/<title[^>]*>([^<]+)<\/title>/im"
            
            	getTitle = regEx.Execute(strText)
            	Set regEx = Nothing
            End Function
            
            response.write getTitle(strHTML)
            responseText fungerar. Tack!
            Nåt är inte helt rätt med raderna ovan...?

            Kommentera


            • #7
              ja, regex i ASP skrivs inte så

              [kod]regEx.Pattern = "<title[^>]*>([^<]+)<\/title>"[/kod]
              Sen getTitle skall väl ändå retunera första gruppen med värdet och inte regex kollektionen?
              "det går inte att lära en gammal norrlänning byta namn på irc" - gammalt kinesiskt uttryck

              Kommentera


              • #8
                Hej!
                Ursäkta mig för den långsamma konversationen! Jag försöker hitta svaren på egen hand, att inte fråga om allt.

                Tack för pattern!

                Jag hittar inte hur man gör för att returnera första värdet.
                Ofta ska man byta ut olika saker med regular expressions. Men jag vill ju inte byta ut något!

                Den här attans texten vill jag åt!

                <TITLE>Den här attans texten vill jag åt!</TITLE>
                :-)

                Kommentera


                • #9
                  Kod:
                  Function getTitle(strText)
                  	Set regEx = New RegExp
                  		regEx.Global = True
                  		regEx.IgnoreCase = true
                  		regEx.Pattern = "<title[^>]*>([^<]+)<\/title>"
                  
                  	set matches = regEx.Execute(strText)
                  	getTitle = matches(0).Submatches(0)
                  	Set matches = Nothing
                  	Set regEx = Nothing
                  End Function
                  "Det finns tre sorters lögn; vanlig lögn, förbannand lögn och statistik" - Mark Twain

                  Kommentera


                  • #10
                    Kalas!
                    Tackar ödmjukast!
                    Det kan inte bli bättre! :-)

                    Kommentera

                    Working...
                    X