当前时区为 UTC + 8 小时



发表新帖 回复这个主题  [ 4 篇帖子 ] 
作者 内容
1 楼 
 文章标题 : 怎样从google搜索结果页面提取出第n个结果?
帖子发表于 : 2011-05-04 20:42 

注册: 2008-09-18 20:15
帖子: 133
送出感谢: 3
接收感谢: 0 次
如题。
我看了一下google的搜索结果的html,发现看不太懂。


页首
 用户资料  
 
2 楼 
 文章标题 : Re: 怎样从google搜索结果页面提取出第n个结果?
帖子发表于 : 2011-05-05 9:30 
头像

注册: 2009-07-07 19:52
帖子: 240
送出感谢: 0 次
接收感谢: 0 次
谷歌的搜索结果应该是通过 Ajex 或者 JavaScript 显示出来的,并不是直接嵌套在页面里,你需要找到相应的代码分析出来。


_________________
阿呆 : 天下第一呆!


页首
 用户资料  
 
3 楼 
 文章标题 : Re: 怎样从google搜索结果页面提取出第n个结果?
帖子发表于 : 2011-05-14 23:27 

注册: 2011-01-04 11:49
帖子: 23
送出感谢: 0 次
接收感谢: 0 次
半年前写过一个检查google排名的代码
刚才去google搜索大致看了一下,没有太大变化
目前还没有用javascript来对结果进行处理。

首先你要找到搜索结果所在的区块,半年前这个区块是可以用<ol>[\s\S]+</ol>来提取出来的,但是现在已经变化了,这个很正常,google每隔一段时间都会对这个部分进行改变的,不过变化也不太大
现在是<ol id="rso">[\s\S]+</ol>,中间没有ol元素,所以可以直接提取出来。
goole搜索的每个结果都是以<li class=g来开头了,根据浏览器不同,源代码显示可能不太一样,也可能是<li class="g,然后一直找到最近的一个</div>,为什么不是/li>,因为不是对DOM进行解析,只需要找到需要的部分就是可以了。
<li class="g开始到</div>的内容就对应了一个搜索结果,你把这些结果全部提取出来以后,进行排序查找就可以了。


页首
 用户资料  
 
4 楼 
 文章标题 : Re: 怎样从google搜索结果页面提取出第n个结果?
帖子发表于 : 2011-05-25 14:47 

注册: 2008-09-18 20:15
帖子: 133
送出感谢: 3
接收感谢: 0 次
gpgkd906 写道:
半年前写过一个检查google排名的代码
刚才去google搜索大致看了一下,没有太大变化
目前还没有用javascript来对结果进行处理。

首先你要找到搜索结果所在的区块,半年前这个区块是可以用<ol>[\s\S]+</ol>来提取出来的,但是现在已经变化了,这个很正常,google每隔一段时间都会对这个部分进行改变的,不过变化也不太大
现在是<ol id="rso">[\s\S]+</ol>,中间没有ol元素,所以可以直接提取出来。
goole搜索的每个结果都是以<li class=g来开头了,根据浏览器不同,源代码显示可能不太一样,也可能是<li class="g,然后一直找到最近的一个</div>,为什么不是/li>,因为不是对DOM进行解析,只需要找到需要的部分就是可以了。
<li class="g开始到</div>的内容就对应了一个搜索结果,你把这些结果全部提取出来以后,进行排序查找就可以了。


many thanks


页首
 用户资料  
 
显示帖子 :  排序  
发表新帖 回复这个主题  [ 4 篇帖子 ] 

当前时区为 UTC + 8 小时


在线用户

正在浏览此版面的用户:没有注册用户 和 1 位游客


不能 在这个版面发表主题
不能 在这个版面回复主题
不能 在这个版面编辑帖子
不能 在这个版面删除帖子
不能 在这个版面提交附件

前往 :  
本站点为公益性站点,用于推广开源自由软件,由 DiaHosting VPSBudgetVM VPS 提供服务。
我们认为:软件应可免费取得,软件工具在各种语言环境下皆可使用,且不会有任何功能上的差异;
人们应有定制和修改软件的自由,且方式不受限制,只要他们自认为合适。

Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
简体中文语系由 王笑宇 翻译