免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 4806 | 回复: 9
打印 上一主题 下一主题

求助大牛 如何获取网页元素 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2011-10-29 19:32 |只看该作者 |倒序浏览
要获取元素的目标网页如下:
http://product.dangdang.com/product.aspx?product_id=21106015

想获取这个网页里的如下元素的内容:
<div class="item book_edit">

用Perl能实现吗?涉及哪方面的知识。

论坛徽章:
0
2 [报告]
发表于 2011-10-30 00:26 |只看该作者
Web::Scraper

论坛徽章:
0
3 [报告]
发表于 2011-10-30 09:02 |只看该作者
要获取元素的目标网页如下:


想获取这个网页里的如下元素的内容:


用Perl能实现吗?涉及哪方面的 ...
coolbug223 发表于 2011-10-29 19:32



    试试HTML::TreeBuilder,这个用来解析网页元素。

论坛徽章:
0
4 [报告]
发表于 2012-07-04 19:51 |只看该作者
我不懂啦 想要书本

论坛徽章:
5
亥猪
日期:2013-10-15 13:41:04CU十二周年纪念徽章
日期:2013-10-24 15:41:34申猴
日期:2013-10-28 10:55:45辰龙
日期:2013-10-31 13:29:29丑牛
日期:2014-02-14 11:25:54
5 [报告]
发表于 2012-07-05 00:37 |只看该作者
把页面搞下来然后xpath~~~

论坛徽章:
0
6 [报告]
发表于 2012-07-05 05:43 |只看该作者
我一般都是下载网页后用正则找,不过现在很多网页使用了ajix,需要先跟踪一下链接!

论坛徽章:
1
2015年辞旧岁徽章
日期:2015-03-03 16:54:15
7 [报告]
发表于 2012-07-05 07:46 |只看该作者
lkk_super 发表于 2012-07-05 00:37
把页面搞下来然后xpath~~~


大概的步骤就是上面说的这样。你要做的是两件事:
1. 下载网页
2. XPATH分析网页,拿到你要的元素

Web::Scraper是做步骤2的,推荐使用。
Web::Scraper实际上就是使用HTML::TreeBuilder来生成DOM的,当你用XPATH取得网页元素的时候,实际上使用的是HTML::TreeBuilder::XPath,这也是Web::Scraper模块的默认行为。
HTML::TreeBuilder::XPath模块实际上使用的是libxml,这个效率相比libxml2要低,所以后来膏药国的人就做了HTML::TreeBuilder::LibXML模块,这个模块对应使用libxml2,是目前效率最高的DOM方式解析xml/html的方式。所谓“使用libxml2”其实还是用的XML::LibXML,我多次给这个模块做宣传。。。 很多效率要求高的地方,例如大量的XML日志,我都是直接用XML::LibXML做的。

可能因为同是膏药国的人,后来Web::Scraper也支持了HTML::TreeBuilder::LibXML模块,我一般都是明确指定“use Web::Scraper::LibXML;”。

最后说步骤1,如果网页不多,就LWP。多的话考虑AnyEvent::HTTP

论坛徽章:
1
2015年辞旧岁徽章
日期:2015-03-03 16:54:15
8 [报告]
发表于 2012-07-05 08:03 |只看该作者
刚看到楼主的目标网页

现在很多人要获取网页元素多是做些商城相关的操作,但又缺乏很多基础知识。
其实这是一个很没含金量但又挺有意思的事,建议楼主多看看相关技术。如果你做过一些简单的搜索,你至少能知道XPATH是满足你需求的最合理答案。

论坛徽章:
0
9 [报告]
发表于 2012-07-12 14:13 |只看该作者
正则是最快的

论坛徽章:
2
CU大牛徽章
日期:2013-04-17 11:46:28CU大牛徽章
日期:2013-04-17 11:46:39
10 [报告]
发表于 2012-07-12 14:26 |只看该作者
perl 肯定能满足楼主的要求
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP