0

私は何年も MSXML2.ServerXMLHTTP を使用していませんでしたが、今では使用する必要があります。MSXML2.ServerXMLHTTP を使用してページを取得すると、ページが壊れた画像で返されます。過去にこれを行ったことを覚えています。使用するコード行があり、画像は完全に解決されました。ベースURLを設定するようなものでした。コードがどうなるか知っている人はいますか?私が使用しているコードは次のとおりです。

url = "notimportant.com"

Set objXML = Server.CreateObject("MSXML2.ServerXMLHTTP")
    objXML.Open "GET", URL, False
    objXML.Send()
    xmlResponse = objXML.responseText
Set objXML = Nothing
4

1 に答える 1

1

コードの 1 行が次のようになるように、 の<base>中にタグ を配置することをお勧めします。<head>

xmlResponse = Replace(objXML.responseText, "<head>", "<head><base href=""http://notimportant.com/"" />", 1, 1, vbTextCompare)

または、 head タグが のように複雑で予測できない場合のより信頼性の高い方法として、<head class="head etc">正規表現を使用して置き換えることができます。

Dim Re
Set Re = New RegExp
    Re.IgnoreCase = True
    Re.Pattern = "<head[^>]*>"

xmlResponse = Re.Replace(objXML.responseText, "$&<base href=""http://notimportant.com/"" />")
于 2016-06-09T07:05:03.500 に答える