A seguir está uma função para extrair o endereço da imagem em HTML:
o princípio principal é usar expressões regulares para determinar o atributo <src> de <img>. Isto será muito útil em programas de aquisição.
A função é a seguinte:
A seguir está um fragmento de citação:
Função ShowPic(str)
Definir objRegExp = Novo objeto de configuração do conjunto de Regexp
objRegExp.IgnoreCase = True'Ignorar caso
objRegExp.Global = True' definido para pesquisa de texto completo
objRegExp.Pattern = "<img.+?>"
'Para garantir que o endereço da imagem possa ser recuperado com precisão, ele é dividido em dois níveis de configuração: primeiro encontre a tag <img> dentro e, em seguida, recupere o endereço da imagem dentro dela. A função getimgs por trás dela implementa a última função.
strs=cortar(str)
Definir correspondências =objRegExp.Execute(strs)'Iniciar execução da configuração
Para cada partida nas partidas
RetStr = RetStr &getimgs( Match.Value )'Execute a segunda rodada de correspondência
Próximo
ShowPic = RetStr
Função final
Função getimgs(str)
getimgs=""
Definir objRegExp1 = Novo Regexp
objRegExp1.IgnoreCase = Verdadeiro
objRegExp1.Global = Verdadeiro
objRegExp1.Pattern = " http://.+?"""' Obtenha o endereço dentro
definir mm = objRegExp1.Execute (str)
Para cada partida1 em mm
getimgs=getimgs&left(Match1.Value,len(Match1.Value)-1)&"||"'String os endereços dentro para uso posterior
próximo
Função final
'Obter conteúdo de imagem
função getHTTPage(url)
em caso de erro, retome a seguir
escurecer http
set http=server.createobject("MSXML2.XMLHTTP")'Use o método xmlhttp para obter o conteúdo da imagem
Http.open "GET",url,falso
http.send()
se Http.readystate<>4 então
função de saída
terminar se
getHTTPPage=Http.responseBody
definir http = nada
se err.número<>0 então err.Clear
função final
'Salvar foto
função salvar imagem (de, para arquivo)
dim geturl,objStream,imgs
geturl=cortar(de)
imgs=gethttppage(geturl)'O processo de obtenção do conteúdo específico da imagem
Set objStream = Server.CreateObject("ADODB.Stream")' Para criar um objeto ADODB.Stream, é necessário ADO 2.5 ou superior
objStream.Type = 1'Abrir em modo binário
objStream.Open
objstream.write imgs' grava o conteúdo da string no buffer
objstream.SaveToFile server.mappath(tofile),2'-grava o conteúdo em buffer no arquivo
objstream.Close()'Fecha o objeto
definir objstream = nada
função final
'Chamar instância
Dim strpic,i,fname
strpic = ShowPic("<DIV align=center><IMG src="" strpic = Split(strpic,"||")
Se UBound(strpic) > 0 Então
Para i = 0 Para UBound(strpic) - 1
'Salvar imagem
fname=cstr(i&mid(strpic(i),instrrev(strpic(i),".")))
salvarimagem(strpic(i),fname)
Próximo
Outro
Terminar se