PLZ一起來看看這個:
Sub Main
Dim str As String = New WebClient().DownloadString(("http://www.alexa.com/siteinfo/example.com"))
Dim pattern = "a href=""/siteowners/certify.+?\>(?<rank>[0-9,]+?)\<\/a\>"
Dim r = new Regex(pattern, RegexOptions.IgnoreCase)
Dim m As Match = r.Match(str)
If m.Success Then
Debug.Print("Global rank " + m.Groups(1).ToString())
m = m.NextMatch()
Debug.Print("Usa rank " + m.Groups(1).ToString())
Else
Debug.Print("Failed")
End If
End Sub
在我的電腦答案是
Global rank 8,893
Usa rank 10,060
此代碼需要更好的錯誤處理,但我想它是確定的概念證明。
UPD。關於它是如何工作的一些字:
上面的代碼使用正則表達式(請看看這個link開始)解析網頁並提取您需要的值。
從您提供一個可以看到的行列存儲在HTML <a>
標籤,我確定它的href屬性,因爲它是頁面上的唯一<a>
標籤的截圖,其href
屬性與字符串開始「/網站擁有者/證明」。因此,我的正則表達式匹配該標籤的內部文本並將其提取到匹配組中。
感謝Rustam的工作... –
你能解釋一下它的工作方式嗎? –
@Amitkumar請參閱答案的更新。如果您在解決您的問題時將我的答案標記爲正確,我也會很感激。 – Rustam