다음은 HTML에서 이미지 주소를 추출하는 함수입니다.
주요 원칙은 정규식을 사용하여 <img>의 <src> 속성을 결정하는 것입니다. 이는 획득 프로그램에 매우 유용할 것입니다.
함수는 다음과 같습니다.
다음은 인용문입니다.
함수 ShowPic(str)
Set objRegExp = New Regexp'set 구성 객체
objRegExp.IgnoreCase = True'대소문자 무시
objRegExp.Global = True'가 전체 텍스트 검색으로 설정됨
objRegExp.Pattern = "<img.+?>"
'이미지 주소를 정확하게 검색할 수 있도록 구성은 두 가지 수준으로 나뉩니다. 먼저 내부에서 <img> 태그를 찾은 다음 내부의 이미지 주소를 검색하는 getimgs 함수가 후자의 기능을 구현합니다.
strs=트림(str)
Set Matches =objRegExp.Execute(strs)'구성 실행 시작
경기의 각 경기에 대해
RetStr = RetStr &getimgs( Match.Value )' 두 번째 매칭 라운드 수행
다음
ShowPic = RetStr
기능 종료
함수 getimgs(str)
getimgs=""
objRegExp1 = 새 정규식 설정
objRegExp1.IgnoreCase = 참
objRegExp1.Global = 참
objRegExp1.Pattern = " http://.+?"""' 내부 주소 가져오기
mm=objRegExp1.Execute(str) 설정
각 일치 항목에 대해1(mm)
getimgs=getimgs&left(Match1.Value,len(Match1.Value)-1)&"||"'나중에 사용하기 위해 내부 주소를 문자열로 묶습니다.
다음
기능 종료
'이미지 콘텐츠 가져오기
함수 getHTTPage(url)
오류 발생 시 다음 재개
희미한 http
set http=server.createobject("MSXML2.XMLHTTP")'xmlhttp 메소드를 사용하여 이미지의 내용을 가져옵니다.
Http.open "GET", URL, false
Http.send()
Http.readystate<>4이면
종료 기능
종료하면
getHTTPPage=Http.responseBody
http=아무것도 설정하지 않음
err.number<>0이면 err.Clear
함수 종료
'사진 저장
함수 saveimage(from,tofile)
희미한 geturl,objStream,imgs
geturl=트림(from)
imgs=gethttppage(geturl)'이미지의 특정 내용을 얻는 과정
Set objStream = Server.CreateObject("ADODB.Stream")' ADODB.Stream 개체를 생성하려면 ADO 2.5 이상이 필요합니다.
objStream.Type =1'바이너리 모드에서 열기
objStream.Open
objstream.write imgs'는 문자열 내용을 버퍼에 씁니다.
objstream.SaveToFile server.mappath(tofile),2'-버퍼링된 내용을 파일에 씁니다.
objstream.Close()'객체 닫기
objstream=아무것도 설정하지 않음
end function
'인스턴스 호출
희미한 strpic,i,fname
strpic = ShowPic("<DIV align=center><IMG src="" strpic = 분할(strpic,"||")
UBound(strpic) > 0이면
i = 0의 경우 UBound(strpic) - 1
'사진 저장
fname=cstr(i&mid(strpic(i),instrrev(strpic(i),".")))
이미지 저장(strpic(i),fname)
다음
또 다른
종료 조건