用 Gambas 进行网页抓取,有可能吗?
Web scraping with Gambas, is it possible?
使用Gambas,是否可以将网页下载到一个字符串,然后解析该字符串。
我知道一旦有了数据我就可以解析字符串中的数据,我正在努力将网页中的数据转换为字符串。
您可以使用 HttpClient
class from the gb.net.curl 组件
您还可以在此处找到如何同步或异步读取数据的示例。
要从 Web 获取字符串中的数据,您可以编写以下函数(在这种情况下它将是同步的)
Public Function GetTextFromUrl(url As String) As String
Dim client As New HttpClient As "client"
client.URL = url
client.async = False
client.Get()
' an error occured
If client.Status < 0 Then
Return ""
Endif
' no data available
If Not Lof(client) Then
Return ""
Endif
' Reads the data from the server and returns it as a String
Return Read #client, Lof(client)
End
你可以这样调用函数:
Public Sub Main()
Print GetTextFromUrl("http://whosebug.com")
End
使用Gambas,是否可以将网页下载到一个字符串,然后解析该字符串。 我知道一旦有了数据我就可以解析字符串中的数据,我正在努力将网页中的数据转换为字符串。
您可以使用 HttpClient
class from the gb.net.curl 组件
您还可以在此处找到如何同步或异步读取数据的示例。
要从 Web 获取字符串中的数据,您可以编写以下函数(在这种情况下它将是同步的)
Public Function GetTextFromUrl(url As String) As String
Dim client As New HttpClient As "client"
client.URL = url
client.async = False
client.Get()
' an error occured
If client.Status < 0 Then
Return ""
Endif
' no data available
If Not Lof(client) Then
Return ""
Endif
' Reads the data from the server and returns it as a String
Return Read #client, Lof(client)
End
你可以这样调用函数:
Public Sub Main()
Print GetTextFromUrl("http://whosebug.com")
End