String html = "<div class=''aa" id="aa">
</div>";
Document doc = Jsoupparse(html);
Element link = docselect("div#>aa");//使用id
如果要获取div里面的其它节点直接docselect("div#>aa>p") id=p的节点。
其实任何网页的数据都是由 请求-响应 组成的,谷歌或者火狐 开了F12 选择网络,点击那个更多按钮,你就可以获取到他访问的连接,后面不论普通的 >
public void parse(){
String htmlStr = "<table id=kbtable >"
+ "<tr> "
+ "<td width=123>"
+ "<div id=12>这里是要获取的数据1</div>"
+ "<div id=13>这里是要获取的数据2</div>"
+ "</td>"
+ "<td width=123>"
+ "<div id=12>这里是要获取的数据3</div>"
+ "<div id=13>这里是要获取的数据4</div>"
+ "</td> "
+ "</tr>"
+ "</table>";
Document doc = Jsoupparse(htmlStr);
// 根据id获取table
Element table = docgetElementById("kbtable");
// 使用选择器选择该table内所有的<tr> <tr/>
Elements trs = tableselect("tr");
//遍历该表格内的所有的<tr> <tr/>
for (int i = 0; i < trssize(); ++i) {
// 获取一个tr
Element tr = trsget(i);
// 获取该行的所有td节点
Elements tds = trselect("td");
// 选择某一个td节点
for (int j = 0; j < tdssize(); ++j) {
Element td = tdsget(j);
// 获取td节点的所有div
Elements divs = tdselect("div");
// 选择一个div
for (int k = 0; k < divssize(); k++) {
Element div = divsget(k);
//获取文本信息
String text = divtext();
//输出到控制台
Systemoutprintln(text);
}
}
}
}
总结一下Jsoup提供的方法:
获取元素的有:
getElementById(String id)
getElementsByTag(String tag)
getElementsByClass(String className)
getElementsByAttribute(String key)
siblingElements(), firstElementSibling(), lastElementSibling(); nextElementSibling(), previousElementSibling()
parent(), children(), child(int index)
获取元素数据:
attr(String key) 获取属性
attr(String key, String value) 设置属性
attributes() 获取所有属性
id(), className() and classNames()
text() 获取文字内容
text(String value) 设置文字内容
html() 获取html内容
html(String value) 设置html内容
outerHtml()
data() 获取类似script,style的数据内容
tag() and tagName()
*** 作HTML内容:
append(String html), prepend(String html)
appendText(String text), prependText(String text)
appendElement(String tagName), prependElement(String tagName)
html(String value)
怎样批量获取网页中的所有地址?求大神帮助
你可以用探嗅软体,影音神探,探嗅,可以批量获取网页中的所有地址, :crsky/soft/3520 这里可以下载。
如何批量下载一个网页的所有?急!:jingyanbaidu/article/8275fc869e170f46a03cf6e4
首先开启你的浏览器,然后在浏览器介面上方右击滑鼠,选择选单栏,如果你的浏览器已经有选单栏了,这一步可以省略~
然后,点选档案——储存网页
在选择储存格式的时候,一定要选择网页,全部,不然储存下来的是没有图的哦~
接着点选储存按钮,将整个网页都储存下来~
储存下来的有一个资料夹和一个网页档案,双击开启那个资料夹~
里面全是网页上的了,但是尺寸只是你看到的尺寸哦,如果嫌这些尺寸太小,不合用,比如桌布,建议还是直接在网页上点选下载,这样可以下载高清的哦,直接批量储存网页有利有弊啦
求助怎么获取exe程式的所有这是pdf加密档案,可以直接破解出原来的不加密档案,破解后任何电脑都能看,也可以复制和列印的。
怎样一键提取网页里的所有?简单,你点网页另存为:网页,全部(htm;),储存到桌面上,储存完以后,桌面上会出现一个新资料夹里边装了所有。
java获取某个网页所有并下载到电脑我不晓得你的指的是背景图还是只包含img标签内的,其实区别不大
1、首先 一个urlConnection,连结到你想要的网址,得到response的inputStream,
2、把返回的response当做一个xml解析(推荐使用jsoup,更方便一些),得到所有的img标签,遍历标签的src,下载得到所有的,这边需要注意下 有些网站可能会使用防盗链,低阶的你完全可以用cookie糊弄过去,高阶的就不太好搞了。需要你改一些request中的属性例如Referer之类的,再蛋疼的就需要拿到返回的二级制档案,然后本地重绘了。。。。
3、如果背景图什么的也要的话 ,拿到页面中的css档案,得到所有的连结,重复第二部的 *** 作。。。。
如何全选网页中的所有 将之复制呢
你把网页整个储存 储存的档案中就有一个资料夹是所有的 自己复制就好了
怎样在chrome中批量获取网页中所需媒体的连结地址chrome浏览器用小乐图客扩充套件,可以批量获取连结地址,具体步骤:
:jingyanbaidu/article/63acb44ada434a61f17ee4
如何通过js获取网页中所有并加入点选事件,实现在网页载入完成时,通过js获取和新增点选的识别方式
- (void)webViewDidFinishLoad:(UIWebView )webView {
[IDProgressHUD IDPlaceViewHideDirect:selfview];
这里是js,主要目的实现对url的获取
static NSString const jsGetImages =
@"function getImages(){\
var objs = documentgetElementsByTagName(\"img\");\
var imgScr = '';\
for(var i=0;i<objslength;i++){\
imgScr = imgScr + objs[i]src + '+';\
};\
return imgScr;\
};";
[webView stringByEvaluatingJavaScriptFromString:jsGetImages];注入js方法
NSString urlResurlt = [webView stringByEvaluatingJavaScriptFromString:@"getImages()"];
mUrlArray = [NSMutableArray arrayWithArray:[urlResurlt ponentsSeparatedByString:@"+"]];
if (mUrlArraycount >= 2) {
[mUrlArray removeLastObject];
}
urlResurlt 就是获取到得所有的url的拼接;mUrlArray就是所有Url的阵列
新增可点选js
[mWebView stringByEvaluatingJavaScriptFromString:@"function registerImageClickAction(){\
var imgs=documentgetElementsByTagName('img');\
var length=imgslength;\
for(var i=0;i<length;i++){\
img=imgs[i];\
imgonclick=function(){\
windowlocationhref='image-preview:'+thissrc}\
}\
}"];
[mWebView stringByEvaluatingJavaScriptFromString:@"registerImageClickAction();"];
}
在这个方法中捕获到的点选事件和被点选的url
- (BOOL)webView:(UIWebView )webView shouldStartLoadWithRequest:(NSURLRequest )request navigationType:(UIWebViewNavigationType)navigationType {
预览
if ([requestURLscheme isEqualToString:@"image-preview"]) {
NSString path = [requestURLabsoluteString substringFromIndex:[@"image-preview:" length]];
path = [path stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding];
path 就是被点选的url
return NO;
}
return YES;
}
android如何获取相簿所有从本地选择(比如按钮触发该事件,调取系统相簿)
if (EnvironmentgetExternalStorageState()equals(
EnvironmentMEDIA_MOUNTED)) {
Intent getImageIntent = new Intent(IntentACTION_GET_CONTENT);
getImageIntentaddCategory(IntentCATEGORY_OPENABLE);
getImageIntentsetType("image/jpeg");
startActivityForResult(getImageIntent, 4);
} else {
ToastmakeText(getApplicationContext(), "SD卡不可用", 0)show();
}
本地选择 结果
在activity的onactivityresult()中写:
if (data != null) {判空
Uri uri = datagetData();
urigetPath()toString();
ContentResolver cr = thisgetContentResolver();
try {
Bitmap bmp;压缩
BitmapFactoryOptions option = new BitmapFactoryOptions();
optioninJustDecodeBounds = true;
optioninPurgeable = true;
optioninInputShareable = true;
optioninSampleSize = 2;
optioninJustDecodeBounds = false;
bmp = BitmapFactorydecodeStream(cropenInputStream(uri),
null, option);
imageView_userLogo(view控制元件设定背景)
imageView_userLogosetImageBitmap(BmpToRound
toRoundBitmap(bmp));
File file = SaveBitmapToSdCardsaveMyBitmap(
getApplicationContext(),
"" + SystemcurrentTimeMillis(), bmp);
startUpLoad(file);
} catch (FileNotFoundException e) {
eprintStackTrace();
}
}
如何获取一个网页内的所有邮箱地址求大神帮助我告诉你,你去下载一个MAILGHOST的软体。输入网址他就全部给你抓下来。
记得采纳啊
以上就是关于jsoup如何通过字符串抓取元素全部的内容,包括:jsoup如何通过字符串抓取元素、java如何获取含ajax的网页数据、jsoup解析html的table中的内容等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)