webForumDet fria alternativet

Läsa en sida...

ASPur ASP

23 svar · 786 visningar · startad av Josef

Medlem sedan mars 20023 561 inlägg
Frågan#1

Går det att skriva ett script som läser en html-sida och "addar" alla länkar den hittar i en databas. :q

Medlem sedan mars 20015 287 inlägg
#2

Du kan börja kika tex på denna aktuella tråd: http://www.webforum.nu/showthread.php?s=&threadid=13932

Hur som helst kan du "hämta" sidan med tex XMLHTTP och sen använda regexp för att plocka ut länkarna. Även Asptear är en komponent som är liknande.

Sök på detta och du lär finna en del att starta med.

Medlem sedan mars 20023 561 inlägg
#3

Hur skall jag använda RegExp för att plocka ut länkarna då?

Medlem sedan mars 20015 287 inlägg
Medlem sedan mars 20023 561 inlägg
#5

Det finns ingen annan som har nån idé om hur man plockar du länkarna från en sida med hjälp av RegExp???

Medlem sedan feb. 20022 594 inlägg
#6

Läs om RegExp i en artikel på Vides site: http://www.webeye.nu

Medlem sedan mars 20023 561 inlägg
#7

Jo, så långt har jag också kommit. Men det är just att få scriptet att lägga till det den hittar i en databas.

Som t ex.
<a href="http://www.microsoft.com"> i kolummen url

och ...soft.com">Microsoft i kolummen name.

som är problemet.

Medlem sedan feb. 20022 594 inlägg
#8

Tror också att Voigtann1 gjorde ett sånt script som ligger i Script från wFs medlemmar

Medlem sedan mars 20023 561 inlägg
#9

Tack för det!

Skall kolla det om en stund....

Medlem sedan mars 20023 561 inlägg
#10

Jag hittade inget sådant script...

Medlem sedan juni 20019 519 inlägg
#11

hmm.. jag ska kolla på detta imorgon.. e för trött nu att försöka lösa detta :)

Medlem sedan juni 20019 519 inlägg
#12

har försökt... gick inte alls bra :( e kass på XML :(

Medlem sedan mars 20015 287 inlägg
#13

Har du kommit så pass långt att du har länken samt länknamnet i var sin variabel skall det väl inte vara så svårt att hitta hur du gör en databasinläggning här på forumet.

Medlem sedan mars 20023 561 inlägg
#14

solbulle skrev:

Har du kommit så pass långt att du har länken samt länknamnet i var sin variabel skall det väl inte vara så svårt att hitta hur du gör en databasinläggning här på forumet.

Det ju just där problemet finns. Jag kan inte få namnet och URLen i varsin variabel...

Medlem sedan mars 20015 287 inlägg
#15

Visa den kod du har så ska vi se om vi kan snickra vidare.
Jag sökte och hittade några länkar som kanske kan ge något:
http://www.webforum.nu/search.php?s=&action=showresults&searchid=72644&sortby=lastpost&sortorder=descending

Medlem sedan mars 20023 561 inlägg
#16

Här kommer koden:

<%
Dim url, xmlhttp, myString, objRegExp, myMatches
url = "*******"
set xmlhttp = server.CreateObject("MSXML2.ServerXMLHTTP")
xmlhttp.open "GET", url, false
xmlhttp.send ""
'Response.write(xmlhttp.responsetext)
myString = xmlhttp.responsetext
set xmlhttp = nothing

Set objRegExp = New RegExp
objRegExp.IgnoreCase = true
objRegExp.Global = true
objRegExp.Pattern = ("http://")
Set myMatches = objRegExp.Execute(myString)
Response.Write("<font style=""font-family: Arial; font-size: 9px;"">")
If myMatches.Count = 0 then
	Response.Write("RegExp hittade <b>" & myMatches.Count & "</b> länkar ")
ElseIf myMatches.Count = 1 then
	Response.Write("RegExp hittade <b>1</b> länk ")
Else
	Response.Write("RegExp hittade <b>" & myMatches.Count & "</b> länkar ")
End If
Response.Write(" på <a href=""" & url & """><b>" & url & "</b></a>")
Response.Write("<hr color=""#C0C0C0"" width=""275"" align=""left"">")
Set objRegExp = Nothing
Response.Write(myString)
%>
Medlem sedan mars 2000126 inlägg
#17

RegExp för länkar

Hoppas det här kan hjälpa dig på vägen.

<%
url = "http://www.microsoft.se"
Set xmlhttp = server.CreateObject("MSXML2.ServerXMLHTTP")
xmlhttp.open "GET", url, False
xmlhttp.send ""
myString = xmlhttp.responsetext
Set xmlhttp = nothing

Set objRegExp = new RegExp
objRegExp.pattern = """http://(.*?)""|''http://(.*?)''"
objRegExp.IgnoreCase = True
objRegExp.Global = True

Set myMatches = objRegExp.Execute(myString)

If myMatches.Count = 0 Then
Response.Write "RegExp hittade inga länkar<BR>"
ElseIf myMatches.Count = 1 Then
Response.Write "RegExp hittade " & myMatches.Count & " länk<BR>"
Else
Response.Write "RegExp hittade " & myMatches.Count & " länkar<BR>"
End If

cnt = 1
For each item In myMatches
Response.Write "Länk " & cnt & " är <B>" & item.Value & "</B><BR>"
cnt = cnt + 1
Next

%>

//Broskan

Medlem sedan mars 20015 287 inlägg
#18

Där har vi en som kunde sin RegExp :)

Medlem sedan juni 20019 519 inlägg
#19

men ville han inte att EFTER Regexp hade tagit ur all http:// så skulle alla lagras i databasen?? det var där mitt problem var :)

Medlem sedan mars 20015 287 inlägg
#20

Han vill väl kanske åt länknamnet också kan jag tänka mig.
Sen kan man väl i loopen som nu skriver ut länkarna i stället göra en databasinsättning.

138 ms totalt · 3 externa anrop · v20260731065814-full.b746b907
0 ms — hämta forumlista (cache)
0 ms — hämta statistik (cache)
135 ms — hämta tråd, inlägg och bilagor (db)