网页信息抓取 |
您所在的位置:网站首页 › php获取网页数据 › 网页信息抓取 |
抓取网页信息时,有一个一直困扰我的问题,那就是有些网页的信息是动态生成的,网页载入后,接着执行js,js从服务器端获取数据后填充到网页,现在这种网页实现特别比较多,归功于ajax技术的使用了,用这种技术生成的网页,单靠一个网址是没办法获取网页的信息,火车采集器在这方面还没有去做什么工作吧,今天问了群里的哥们,他们也有这么方面的经验,特别是TommGG这个牛人,下面是他们的聊天记录,那个艾欧里亚是偶自己,呵呵 TommGG给推荐了第一种方法: 1、 利用firefox的组件 这是TommGG给提供建议,以前使用过firefox,用鼠标选择了页面内容,查看源码就能看到最新的html了,TommGG能想到,他有才。 然后中途杀出个keven(渔夫),keven(渔夫)说把这个问题解决了,可以年收入几百万了,我惊了!!钱对他们怎么那么容易赚??下面是keven(渔夫)的方法: 1. 直接解析这些JS,不执行,从中提取数据,这是最好的方法 这个方法没想过哦,一直抓html的哦,要是数据直接就在js里用这种方法了,有些网页的js也是在后台生成的。这样的好处估计是可以减少代码量吧,到前台在执行js生成html,速度也不会太慢了吧,没这么做过哦。 2. 让IE执行JS,从IE中可以获取到执行后的HTML代码 要么说要研究下firefox呢,firefox肯定有这方面的组件可用的。 3. 你的JS数据如果是JSON ,那就好了。 用ajax技术的网站,内容都是从服务器端返回json,要模仿客户端向服务器端发异步请求?有些网站一进去就是:正在加载。。。 后来聊着聊着就跑题了,关于如何用技术赚钱?关于二奶,等等,有钱人的生活啊,我这菜鸟看着觉得距离好遥远,500万从人家嘴里那么轻易说出来。。。。
群聊天记录: 艾欧里亚[466026875] 2009-05-19 09:25:04 有个问题,有的网页的内容是延迟载入的,这个怎么抓啊,像这个http://blog.21ic.org/user1/5475/index.html [TomGG]C%2FVB(124485506) 2009-05-19 09:23:54 http://news.xinhuanet.com/photo/2009-05/15/content_11377265.htm 艾欧里亚[466026875] 2009-05-19 09:26:31 Tomgg,这是? [TomGG]C%2FVB(124485506) 2009-05-19 09:26:06 傻狐狸 艾欧里亚[466026875] 2009-05-19 09:28:37 就喜欢往洞里钻啊 艾欧里亚[466026875] 2009-05-19 09:30:11 网页时js生成的,怎么抓啊?? [TomGG]C%2FVB(124485506) 2009-05-19 09:30:18 去研究firefox吧 艾欧里亚[466026875] 2009-05-19 09:33:06 是啊,它可以看到最终的html,不知道怎么弄啊 艾欧里亚[466026875] 2009-05-19 09:33:51 要用firefox的组件? [TomGG]C%2FVB(124485506) 2009-05-19 09:33:07 恩 艾欧里亚[466026875] 2009-05-19 09:38:32 谢谢,知道方向了,问题是不是在于怎么获取最新的dom,而不是一开始载入的dom,这方面用.net的web browser行不行啊,没用过那个 艾欧里亚[466026875] 2009-05-19 09:49:46 tommgg,有这方面的文章推荐下呗,谢了啊!! [TomGG]C%2FVB(124485506) 2009-05-19 09:49:17 你去查微软研究院的论文 [TomGG]C%2FVB(124485506) 2009-05-19 09:50:00 基于dom树的网页正文提取的模板自动生成 艾欧里亚[466026875] 2009-05-19 09:55:21 哦,看来您真是太有研究了!!太谢谢了啊! keven(渔夫)(241160990) 2009-05-19 09:56:53 基于DOM基于正则表达式 DOM优点结构清晰,可以用XPATH定位节点,缺点是占用大量内存,要面对非结构完好的html keven(渔夫)(241160990) 2009-05-19 09:57:55 正则表达式,速度快,不用构造过多的对象缺点是要写烦人的正则表达式 艾欧里亚[466026875] 2009-05-19 10:03:23 其实我想知道怎么获取最新的dom,因为页面载入后又要执行里面的js,就像获得执行完js后的都没 艾欧里亚[466026875] 2009-05-19 10:03:35 执行完js后的dom keven(渔夫)(241160990) 2009-05-19 10:04:25 1. 直接解析这些JS,不执行,从中提取数据,这是最好的方法 2. 让IE执行JS,从IE中可以获取到执行后的HTML代码 keven(渔夫)(241160990) 2009-05-19 10:05:05 你的JS数据如果是JSON,那就最好了 艾欧里亚[466026875] 2009-05-19 10:09:33 哦,应该是json,呵呵 [lucklrj]php(7691272) 2009-05-19 10:17:53 你解决这个问题,你可以年收入几百万了, [TomGG]C%2FVB(124485506) 2009-05-19 10:18:10 [lucklrj]php(7691272) 2009-05-19 10:19:27 核心办法就是写个程序实现浏览器解析xml产生一个最终的html 再分析 网络采集(310105089) 2009-05-19 10:20:52 年收入几百万 |
今日新闻 |
推荐新闻 |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |