如何获取 google 搜索页面的 HTML 来源?
How to get the HTML source of a google search page?
我正在努力提高我的编码技能,我正在尝试设计一种用于查看 google 搜索的自定义客户端。
我不想用googleAPI,主要是觉得这样会剪掉很多有趣的节目。
我尝试下载网页,目的是解析 HTML。但是,当我下载搜索页面时,我找不到任何有用的数据,比如我在原始页面上看到的 URL。
这是一个搜索词 "file" 的示例。
有谁知道下载页面 html 的正确方法吗?
提前致谢
获取 HTML 的方法如下:
Dim WebRequest As HttpWebRequest = TryCast(HttpWebRequest.Create(SearchString), HttpWebRequest)
Dim WR As HttpWebResponse = TryCast(WebRequest.GetResponse(), HttpWebResponse)
Dim receiveStream As Stream = WR.GetResponseStream()
Dim readStream As New StreamReader(receiveStream, Encoding.UTF8)
Dim Page As [String] = readStream.ReadToEnd()
我会使用 HtmlAgility Pack 来解析它。
您正在尝试做的事情叫做 web scraping,或者通过假装您通过浏览器加载页面来尝试从网站中提取内容,然后通过查看和挑选页面代码的点点滴滴来访问加载的内容。有时这可以很好地工作(整个企业都致力于网络抓取!)而其他时候则不是那么好 - 这就是其中之一。
由于您实际上是直接翻录页面代码,而不是通过真正的浏览器查看它,因此正在执行下载动态内容的 JavaScript 中的 none,因此,none 您正在寻找的内容正在正确加载。您已经(大部分)从页面本身下载了 JavaScript,它负责加载内容,但它没有被执行。
相反,请尝试下载包含已由 Google 处理过的搜索结果的页面(而不是动态加载的结果),例如搜索“test" on Google. Notice the difference in URLs between that search, and this one”,它会加载结果对于 "test" 动态。
我正在努力提高我的编码技能,我正在尝试设计一种用于查看 google 搜索的自定义客户端。
我不想用googleAPI,主要是觉得这样会剪掉很多有趣的节目。
我尝试下载网页,目的是解析 HTML。但是,当我下载搜索页面时,我找不到任何有用的数据,比如我在原始页面上看到的 URL。
这是一个搜索词 "file" 的示例。
有谁知道下载页面 html 的正确方法吗?
提前致谢
获取 HTML 的方法如下:
Dim WebRequest As HttpWebRequest = TryCast(HttpWebRequest.Create(SearchString), HttpWebRequest)
Dim WR As HttpWebResponse = TryCast(WebRequest.GetResponse(), HttpWebResponse)
Dim receiveStream As Stream = WR.GetResponseStream()
Dim readStream As New StreamReader(receiveStream, Encoding.UTF8)
Dim Page As [String] = readStream.ReadToEnd()
我会使用 HtmlAgility Pack 来解析它。
您正在尝试做的事情叫做 web scraping,或者通过假装您通过浏览器加载页面来尝试从网站中提取内容,然后通过查看和挑选页面代码的点点滴滴来访问加载的内容。有时这可以很好地工作(整个企业都致力于网络抓取!)而其他时候则不是那么好 - 这就是其中之一。
由于您实际上是直接翻录页面代码,而不是通过真正的浏览器查看它,因此正在执行下载动态内容的 JavaScript 中的 none,因此,none 您正在寻找的内容正在正确加载。您已经(大部分)从页面本身下载了 JavaScript,它负责加载内容,但它没有被执行。
相反,请尝试下载包含已由 Google 处理过的搜索结果的页面(而不是动态加载的结果),例如搜索“test" on Google. Notice the difference in URLs between that search, and this one”,它会加载结果对于 "test" 动态。