使用phantomjs进行网页抓取,怎么获得div中的文本

使用phantomjs进行网页抓取,怎么获得div中的文本,第1张

如果要实现Taste算法,必备的条件是: 1) JDK,使用16版本。需要说明一下,因为要基于Eclipse构建,所以在设置path的值之前要先定义JAVA_HOME变量。 2) Maven,使用2011版本或以上。在eclipse上安装maven插件—m2eclipse

<!doctype html>

<html>

<head>

<meta charset="UTF-8">

<title>Document</title>

<script type="text/JavaScript">

function aa(str) {

if(str != ""){

alert(str);

}

else{

alert("DIV里没有内容");

}

}

</script>

</head>

<body>

<div id="aa">啊大范德萨范德萨分为啊</div><input type="button" value="确认有没有内容" onclick="aa(documentgetElementById('aa')innerText)"/>

</body>

</html>

一实现原理:

获取div中文本的长度,然后和通过和属性limit规定的长度进行对比,如果超出长度则使用截取指定的长度,后面用<nobr>27 (10000%)</nobr>

替代就行。

二代码注释:

1jQueryfnlimit=function(){},用以为jQuery扩展一个实例函数,jQuery对象可以调用此函数。

2var self = $("div[limit]"),用以获去具有limit属性的div对象集合。

3selfeach(function(){ },可以让获取的让div对象集合中的每一个对象遍历执行一次指定的函数。

4var objString = $(this)text(),获取div元素中的文本内容,这里的this是指当each()函数进行遍历时当前div。

5var objLength = $(this)text()length,获取当前div中文本内容的长度。

6var num = $(this)attr("limit"),获取div中limit属性值,在这里用作了指定的字符长度。

7if(objLength > num){},div中文本内容长度大于指定长度这执行指定的代码。

8$(this)attr("title",objString),将div的title属性值设置为div中的内容。

9objString = $(this)text(objStringsubstring(0,num) + ""),截取指定长度字符串,超出的用省略号代替。

其实你用不着用innerHTML了

<script type="text/javascript">

function changelink(){

documentgetElementById('myanchor')value="取消"; 

}   

</script>

<div id="my"><input type="text" value="确认" id="myanchor" /></div>

<form name="myform"><input type="button" value="更换内容" onClick="changelink()" /></form>

这样你不知道你有没理解,或者说有没达到你想达到的要求

文本框属于表单字段,jQuery

提供了val()

方法用以设置或返回表单字段的值,语法为$(selector)val()。下面根据不同情形,演示获取div下面一个文本框的值的方法:

1、如果已知文本框的某些属性,例如id,class,name:

$("#demo_text")val();

//

直接根据id获取

$("#test

:textdemo_text")val();

//

根据class获取

$("#test

:text[name='demo_text']")val();

//

根据name获取

2、如果已知文本框的相对位置

$("#test

:text")first()val();

//

第一个

$("#test

:text")last()val();

//

最后一个

$("#test

:text")eq(1)val();

//

#test下的第2个文本框

思路:通过id可以获取到<div>对象,通过getAttribute()和innerHTML分别可以获取<div>对象的自定义属性和文本内容。下面实例演示获取<div>标签的自定义属性user_id: 1、HTML结构 <div id="test" user_id="test_id">id="test" user_id="test_id"</div><br/> <input type='button' value='获取div的自定义属性' onclick="fun()"/> 2、javascript代码 function fun(){ obj = documentgetElementById("test"); alert(objgetAttribute("user_id")) } 3、点击按钮后效果

以上就是关于使用phantomjs进行网页抓取,怎么获得div中的文本全部的内容,包括:使用phantomjs进行网页抓取,怎么获得div中的文本、JS。需要先获取某个DIV里的文字,再判断是否包含另一段文字、jquery 截取div内特定文字等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址:https://www.54852.com/web/9728531.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-01
下一篇2023-05-01

发表评论

登录后才能评论

评论列表(0条)

    保存