htmlunit第一个爬虫演示 目标网址http://ent.sina.com.cn/film/

基本都要放弃了

springmvc 配置了htmlunit之后无法运行,都不能正常实例化webclient,但是突然想起来用maven应用程序测试一下

结果竟然就可以了.好吧,还是有希望的

大佬博客https://www.cnblogs.com/davidwang456/articles/8693050.html

main方法中

 public static void main(String[] args) {
        final WebClient webClient = new WebClient(BrowserVersion.CHROME);//新建一个模拟谷歌Chrome浏览器的浏览器客户端对象
        webClient.getOptions().setThrowExceptionOnScriptError(false);//当JS执行出错的时候是否抛出异常, 这里选择不需要
        webClient.getOptions().setThrowExceptionOnFailingStatusCode(false);//当HTTP的状态非200时是否抛出异常, 这里选择不需要
        webClient.getOptions().setActiveXNative(false);
        webClient.getOptions().setCssEnabled(false);//是否启用CSS, 因为不需要展现页面, 所以不需要启用
        webClient.getOptions().setJavaScriptEnabled(true); //很重要,启用JS
        webClient.setAjaxController(new NicelyResynchronizingAjaxController());//很重要,设置支持AJAX

        HtmlPage page = null;
        try {
            page = webClient.getPage("http://ent.sina.com.cn/film/");//尝试加载上面图片例子给出的网页
        } catch (Exception e) {
            e.printStackTrace();
        } finally {
            webClient.close();
        }

        webClient.waitForBackgroundJavaScript(30000);//异步JS执行需要耗时,所以这里线程要阻塞30秒,等待异步JS执行结束

        String pageXml = page.asXml();//直接将加载完成的页面转换成xml格式的字符串

        //TODO 下面的代码就是对字符串的操作了,常规的爬虫操作,用到了比较好用的Jsoup库
        Document document = Jsoup.parse(pageXml);//获取html文档
        List<Element> infoListEle =
                document.getElementById("feedCardContent").
                        getElementsByAttributeValue("class", "feed-card-item");//获取元素节点等
        infoListEle.forEach(element -> {
            System.out.println(element.getElementsByTag("h2").first().getElementsByTag("a").text());
            System.out.println(element.getElementsByTag("h2").first().getElementsByTag("a").attr("href"));
        });

        System.out.println("Hello World!");

没写为何这样区

所以我又用f12检查了一下

大概就是这样一个获取路线

输出内容如下

--- exec-maven-plugin:1.2.1:exec (default-cli) @ htmlUnitTest ---
十二月 12, 2018 7:24:32 下午 com.gargoylesoftware.htmlunit.IncorrectnessListenerImpl notify
警告: Obsolete content type encountered: ‘application/x-javascript‘.
十二月 12, 2018 7:24:32 下午 com.gargoylesoftware.htmlunit.javascript.host.css.CSSStyleSheet isValidCondition
警告: Unhandled CSS condition type ‘PREFIX_ATTRIBUTE_CONDITION‘. Accepting it silently.
十二月 12, 2018 7:24:32 下午 com.gargoylesoftware.htmlunit.javascript.StrictErrorReporter runtimeError
严重: runtimeError: message=[An invalid or illegal selector was specified (selector: ‘*,:x‘ error: Invalid selector: *:x).] sourceName=[http://n.sinaimg.cn/lib/core/core.js] line=[1] lineSource=[null] lineOffset=[0]
十二月 12, 2018 7:24:32 下午 com.gargoylesoftware.htmlunit.IncorrectnessListenerImpl notify
警告: Obsolete content type encountered: ‘application/x-javascript‘.
十二月 12, 2018 7:24:32 下午 com.gargoylesoftware.htmlunit.IncorrectnessListenerImpl notify
警告: Obsolete content type encountered: ‘application/x-javascript‘.
十二月 12, 2018 7:24:32 下午 com.gargoylesoftware.htmlunit.IncorrectnessListenerImpl notify
警告: Obsolete content type encountered: ‘application/x-javascript‘.
十二月 12, 2018 7:24:32 下午 com.gargoylesoftware.htmlunit.IncorrectnessListenerImpl notify
警告: Obsolete content type encountered: ‘application/x-javascript‘.
十二月 12, 2018 7:24:32 下午 com.gargoylesoftware.htmlunit.IncorrectnessListenerImpl notify
警告: Obsolete content type encountered: ‘application/x-javascript‘.
十二月 12, 2018 7:24:33 下午 com.gargoylesoftware.htmlunit.IncorrectnessListenerImpl notify
警告: Obsolete content type encountered: ‘application/x-javascript‘.
十二月 12, 2018 7:24:33 下午 com.gargoylesoftware.htmlunit.IncorrectnessListenerImpl notify
警告: Obsolete content type encountered: ‘application/x-javascript‘.
十二月 12, 2018 7:24:33 下午 com.gargoylesoftware.htmlunit.IncorrectnessListenerImpl notify
警告: Obsolete content type encountered: ‘application/x-javascript‘.
十二月 12, 2018 7:24:33 下午 com.gargoylesoftware.htmlunit.IncorrectnessListenerImpl notify
警告: Obsolete content type encountered: ‘text/javascript‘.
十二月 12, 2018 7:24:33 下午 com.gargoylesoftware.htmlunit.IncorrectnessListenerImpl notify
警告: Obsolete content type encountered: ‘text/javascript‘.
十二月 12, 2018 7:24:33 下午 com.gargoylesoftware.htmlunit.IncorrectnessListenerImpl notify
警告: Obsolete content type encountered: ‘application/x-javascript‘.
十二月 12, 2018 7:24:33 下午 com.gargoylesoftware.htmlunit.IncorrectnessListenerImpl notify
警告: Obsolete content type encountered: ‘application/x-javascript‘.
十二月 12, 2018 7:24:33 下午 com.gargoylesoftware.htmlunit.IncorrectnessListenerImpl notify
警告: Obsolete content type encountered: ‘application/x-javascript‘.
十二月 12, 2018 7:24:34 下午 com.gargoylesoftware.htmlunit.IncorrectnessListenerImpl notify
警告: Obsolete content type encountered: ‘application/x-javascript‘.
十二月 12, 2018 7:24:34 下午 com.gargoylesoftware.htmlunit.IncorrectnessListenerImpl notify
警告: Obsolete content type encountered: ‘application/x-javascript‘.
十二月 12, 2018 7:24:34 下午 com.gargoylesoftware.htmlunit.IncorrectnessListenerImpl notify
警告: Obsolete content type encountered: ‘application/x-javascript‘.
十二月 12, 2018 7:24:35 下午 com.gargoylesoftware.htmlunit.IncorrectnessListenerImpl notify
警告: Expected content type of ‘application/javascript‘ or ‘application/ecmascript‘ for remotely loaded JavaScript element at ‘http://s.weibo.com/ajax/jsonp/suggestion?_cb=jQuery1112023857485591947847_1544613872640&Refer=sina_sug&_=1544613872641‘, but got ‘text/html‘.
十二月 12, 2018 7:24:35 下午 com.gargoylesoftware.htmlunit.IncorrectnessListenerImpl notify
警告: Obsolete content type encountered: ‘application/x-javascript‘.
十二月 12, 2018 7:24:35 下午 com.gargoylesoftware.htmlunit.IncorrectnessListenerImpl notify
警告: Obsolete content type encountered: ‘application/x-javascript‘.
十二月 12, 2018 7:24:35 下午 com.gargoylesoftware.htmlunit.IncorrectnessListenerImpl notify
警告: Obsolete content type encountered: ‘text/javascript‘.
十二月 12, 2018 7:24:35 下午 org.apache.http.client.protocol.ResponseProcessCookies processCookies
警告: Cookie rejected [U_TRS1="00000097.43c95133.5c10efee.6370decc", version:0, domain:.sina.com.cn, path:/, expiry:Sat Dec 09 19:24:30 CST 2028] Illegal ‘domain‘ attribute ".sina.com.cn". Domain of origin: "widget.weibo.com"
十二月 12, 2018 7:24:35 下午 org.apache.http.client.protocol.ResponseProcessCookies processCookies
警告: Cookie rejected [U_TRS2="00000097.43d75133.5c10efee.9b845144", version:0, domain:.sina.com.cn, path:/, expiry:null] Illegal ‘domain‘ attribute ".sina.com.cn". Domain of origin: "widget.weibo.com"
十二月 12, 2018 7:24:35 下午 com.gargoylesoftware.htmlunit.IncorrectnessListenerImpl notify
警告: Obsolete content type encountered: ‘application/x-javascript‘.
十二月 12, 2018 7:24:35 下午 com.gargoylesoftware.htmlunit.IncorrectnessListenerImpl notify
警告: Obsolete content type encountered: ‘application/x-javascript‘.
十二月 12, 2018 7:24:35 下午 com.gargoylesoftware.htmlunit.IncorrectnessListenerImpl notify
警告: Obsolete content type encountered: ‘application/x-javascript‘.
《狗十三》宣发方呼吁多排片:让电影再多留一会
http://ent.sina.com.cn/m/c/2018-12-12/doc-ihmutuec8610350.shtml
纪录片《二十二》国家公祭日重映 限定南京24影院
http://ent.sina.com.cn/m/c/2018-12-12/doc-ihqackaa6408040.shtml
真人版《刺猬索尼克》电影首曝海报 蓝色轮廓还原
http://ent.sina.com.cn/m/f/2018-12-12/doc-ihqackaa6293876.shtml
犯罪片《公路响马》首曝剧照 科斯特纳合作哈里森
http://ent.sina.com.cn/m/f/2018-12-12/doc-ihmutuec8580858.shtml
美国评论家选择奖公布提名 《宠儿》美国谍梦领跑
http://ent.sina.com.cn/m/f/2018-12-12/doc-ihmutuec8578964.shtml
星二代闪耀!史泰龙女儿与福克斯女儿合作新片
http://ent.sina.com.cn/m/f/2018-12-12/doc-ihmutuec8576402.shtml
钮承泽同学:他最爱抢人女友 涉嫌性侵并不惊讶
http://ent.sina.com.cn/m/c/2018-12-12/doc-ihqackaa6141554.shtml
加奈儿·梦奈加盟传记片《我的人生道路》
http://ent.sina.com.cn/m/f/2018-12-12/doc-ihmutuec8574196.shtml
《东邪西毒》翻拍电视剧?从剧情看跟原小说一致
http://ent.sina.com.cn/m/c/2018-12-12/doc-ihmutuec8571380.shtml
杰克·吉伦哈尔主演丹麦电影《罪人》英文翻拍版
http://ent.sina.com.cn/m/f/2018-12-12/doc-ihmutuec8570538.shtml
托尔·比约恩加盟新片《多哥》 威廉·达福主演
http://ent.sina.com.cn/m/f/2018-12-12/doc-ihmutuec8568073.shtml
朱迪·福斯特执导并主演英文翻拍版《战中女人》
http://ent.sina.com.cn/m/f/2018-12-12/doc-ihmutuec8562053.shtml
哈维尔·巴登与艾丽·范宁合作新片 饰演父女
http://ent.sina.com.cn/m/f/2018-12-12/doc-ihqackaa5931969.shtml
重启版《毒魔复仇》电影运作中 原导演参与制片
http://ent.sina.com.cn/m/f/2018-12-12/doc-ihqackaa5910954.shtml
《奇异博士》导演回归执导续集 康伯巴奇回归主演
http://ent.sina.com.cn/m/f/2018-12-12/doc-ihqackaa5848835.shtml
《“大”人物》曝预告 恶势力“活该挨打”喊出观众心声
http://video.sina.com.cn/p/ent/2018-12-12/detail-ihqackaa5833548.d.html
新版《霹雳娇娃》电影杀青 克里斯汀斯图尔特主演
http://ent.sina.com.cn/m/f/2018-12-12/doc-ihqackaa5801199.shtml
美国非裔影评人协会奖公布 《黑豹》获最佳影片
http://ent.sina.com.cn/m/f/2018-12-12/doc-ihmutuec8543573.shtml
澳洲电影与电视艺术学院奖公布提名 基德曼双提
http://ent.sina.com.cn/m/f/2018-12-12/doc-ihqackaa5684709.shtml
DC新片《猛禽小队》再添新反派 扎斯先生将登场
http://ent.sina.com.cn/m/f/2018-12-12/doc-ihqackaa5658377.shtml
《滚石》评选年度电影 《罗马》最佳《毒液》烂
http://ent.sina.com.cn/m/f/2018-12-12/doc-ihqackaa5556399.shtml
北美票房:《无敌破坏王2》三连冠 玛丽女王尚可
http://ent.sina.com.cn/m/f/2018-12-12/doc-ihmutuec8532172.shtml
视频:秦岚谈对宫崎骏印象最深的细节
http://video.sina.com.cn/p/ent/m/c/doc/2018-12-12/152569101314.html
《狗十三》这5年 曹保平焦华静张雪迎的个人故事
http://ent.sina.com.cn/original/qihua/gou13/
《海王》破8亿曝光“深海惊魂”正片片段 海沟族大战叹为观止
http://k.sina.com.cn/article_1744203407_v67f66e8f00100gx2r.html?from=ent&subch=film
《中国合伙人2》发布“双十二非凡”特辑 非凡网别样促销
http://k.sina.com.cn/article_1338816082_v4fccb65200100dvfp.html?from=ent&subch=film
组图:罗美兰金成均《1988》后再合作 为动画角色配音 9
http://slide.ent.sina.com.cn/film/k/slide_4_704_301475.html
《最萌警探》发布终极预告片,囧囧父子大发神威
http://k.sina.com.cn/article_3561759014_vd44c212600100fv4m.html?from=ent&subch=film
《大黄蜂》发布“蜂芒毕露” 预告 热血奋战肩负保卫地球使命
http://k.sina.com.cn/article_2126150055_v7eba79a700100dsak.html?from=ent&subch=film
贺岁最强喜剧《天气预爆》空降成都肖央常远当众开吃“火锅底料”
http://k.sina.com.cn/article_6413792050_17e4ab33200100de0n.html?from=ent&subch=film
Hello World!
------------------------------------------------------------------------
BUILD SUCCESS
------------------------------------------------------------------------
Total time: 11.129s
Finished at: Wed Dec 12 19:24:37 CST 2018
Final Memory: 7M/150M
------------------------------------------------------------------------

htmlUnit的输出内容

然后大概就是获取了

id叫做的元素,然后再获取节点

然后再输出每个节点的 a标签的文字和href链接

原文地址:https://www.cnblogs.com/jnhs/p/10110559.html

时间: 2024-10-16 14:04:26

htmlunit第一个爬虫演示 目标网址http://ent.sina.com.cn/film/的相关文章

[转载]网络爬虫(12):爬虫框架Scrapy的第一个爬虫示例入门教程

我们使用dmoz.org这个网站来作为小抓抓一展身手的对象. 首先先要回答一个问题. 问:把网站装进爬虫里,总共分几步? 答案很简单,四步: 新建项目 (Project):新建一个新的爬虫项目 明确目标(Items):明确你想要抓取的目标 制作爬虫(Spider):制作爬虫开始爬取网页 存储内容(Pipeline):设计管道存储爬取内容 好的,基本流程既然确定了,那接下来就一步一步的完成就可以了. 1.新建项目(Project) 在空目录下按住Shift键右击,选择“在此处打开命令窗口”,输入一

Python项目之我的第一个爬虫----爬取豆瓣图书网,统计图书数量

今天,花了一个晚上的时间边学边做,搞出了我的第一个爬虫.学习Python有两个月了,期间断断续续,但是始终放弃,今天搞了一个小项目,有种丰收的喜悦.废话不说了,直接附上我的全部代码. 1 # -*- coding:utf-8 -*- 2 __author__ = 'Young' 3 4 import re,urllib #urllib : 网页访问,返回网页的数据.内容 5 def my_get(ID):# 封装成函数方便调用 6 html = urllib.urlopen("https://r

[ jquery 选择器 :nth-last-of-type() ] 选取指定(p)父元素下的从后向前数的指定第一个子元素(无关目标元素在父元素中所处的位置)

选取指定(p)父元素下的从后向前数的指定第一个子元素(无关目标元素在父元素中所处的位置): 实例: <!DOCTYPE html> <html lang='zh-cn'> <head> <title>Insert you title</title> <meta http-equiv='description' content='this is my page'> <meta http-equiv='keywords' conte

python爬虫__第一个爬虫程序

前言 机缘巧合,最近在学习机器学习实战, 本来要用python来做实验和开发环境 得到一个需求,要爬取大众点评中的一些商户信息, 于是开启了我的第一个爬虫的编写,里面有好多心酸,主要是第一次. 我的文章有幸被你看到的话,如果你也是个初学者,希望能让你也学习到一些东西,下面是干货. 需求: 环境: 1.windows 7 +python2.7.3+BeautifulSoup包 2.BeautifulSoup是用的最新版,4.x的,在bs4的包中,直接用pip install BeautifulSo

artdialog对话框 三种样式 网址:http://www.planeart.cn/demo/artDialog/_doc/labs.html

摇头效果 类似与wordpress登录失败后登录框可爱的左右晃动效果 // 2011-07-17 更新 artDialog.fn.shake = function (){ var style = this.DOM.wrap[0].style, p = [4, 8, 4, 0, -4, -8, -4, 0], fx = function () { style.marginLeft = p.shift() + 'px'; if (p.length <= 0) { style.marginLeft =

我的第一个爬虫

刚好把Python基础篇看完了,发现还是有很多没看懂滴!就想试试写第一个非常简单的爬虫来感受一下 爬虫也就是爬网页的意思,其实就是根据Url来获取它的网页信息,虽然在我们的浏览器看着是排版非常优美.明确.简单的画面,但其实是由伟大的浏览器解释才呈现出来滴,实际上它是一段HTML代码和Java Script.CSS而已 如果把网页比作成一个人,那么HTML则是人的骨架,Java Script则是人身上的各个地方的肌肉,CSS则是它的衣服.裤子.鞋子.所以最重要部分在于HTML(骨架) 在日常上网浏

第一个爬虫:爬糗事百科笑话

前排提示: Python 3.5 没有分布式队列,没有查重,没有Scrapy-Redis框架,没有效率 参考资料(前排拜谢); 网友静觅 CSDN专栏 Jecvay Notes 知乎大神,言简意赅 第一步:能爬就行 import urllib import urllib.request url = "http://news.dbanotes.net" html = urllib.request.urlopen(url) data = html.read().decode('UTF-8'

《C# 爬虫 破境之道》:第一境 爬虫原理 — 第一节:整体思路

在构建本章节内容的时候,笔者也在想一个问题,究竟什么样的采集器框架,才能算得上是一个“全能”的呢?就我自己以往项目经历而言,可以归纳以下几个大的分类: 根据通讯协议:HTTP的.HTTPS的.TCP的.UDP的: 根据数据类型:纯文本的.json的.压缩包的.图片的.视频的: 根据更新周期:不定期更新的.定期更新的.增量更新的: 根据数据来源:单一数据源.多重数据源.多重数据源混合: 根据采集点分布:单机的,集群的: 根据反爬虫策略:控制频率的,使用代理的,使用特定UA的: 根据配置:可配置的,

《C# 爬虫 破境之道》:第一境 爬虫原理 — 第二节:WebRequest

本节主要来介绍一下,在C#中制造爬虫,最为常见.常用.实用的基础类 ------ WebRequest.WebResponse. 先来看一个示例 [1.2.1]: 1 using System; 2 using System.IO; 3 using System.Net; 4 using System.Text; 5 6 class Program 7 { 8 static void Main(string[] args) 9 { 10 var request = WebRequest.Crea