我正在尝试解析一个非常好的DTD html文件,我通过JSOUP的输入流检索,并获取TD字段中的所有数据.我怎么能用JSoup做到这一点?我已经查看了http://jsoup.org/cookbook/但是我应该用som示例来启动它.
先感谢您.
我已经尝试过saxparser,但我不能让DTD工作.
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1- strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="nl" lang="nl">
<TABLE class=personaltable cellSpacing=0 cellPadding=0>
<TBODY>
<TR class=alternativerow>
<TD>Nieuw beltegoed:</TD>
<TD>€ 1,00</TD></TR>
<TR>
<TD>Tegoed vorige periode:
<TD>€ 2,00</TD></TD></TR>
<TR class=alternativerow>
<TD>Tegoed tot 09-11-2011:
<TD>€ 10,00</TD></TD></TR>
<TR>
<TD>
<TD height=25></TD>
<TR class=alternativerow>
<TD>Verbruik sinds nieuw tegoed:</TD>
<TD>€ 0,33</TD></TR>
<TR>
<TD>Ongebruikt tegoed:</TD>
<TD>€ 12,00</TD></TR>
<TR class=alternativerow>
<TD class=f-Orange>Verbruik boven bundel:</TD>
<TD class=f-Orange>€ 0,00</TD></TR>
<TR>
<TD>Verbruik dat niet in de bundel zit*:</TD>
<TD>€ 0,00</TD></TR>
</TBODY> …
Run Code Online (Sandbox Code Playgroud) 我正在开发 Android 应用程序,使用 JSOUP 来解析 HTML。
我有 HTML 语法
<div class='wrapper'>
<div style='margin:7px;'>
<div class='box' style='height:595px'>
<div class='boxtitlebox'>
<div class='boxtitle'><h4>13 RECENT CHORDS</h4></div><div class='clear'></div>
</div>
<div class='listitem'><a href='http://www.chordfrenzy.com/chord/9742/ungu-apa-sih-maumu-kord-lirik-lagu'>
<div class='subtitle'>Chord Ungu</div>
<div class='title'>Apa Sih Maumu</div>
</a></div>
<div class='listitem'><a href='http://www.chordfrenzy.com/chord/6826/slank-boneka-tersayang-kord-lirik-lagu'>
<div class='subtitle'>Chord Slank</div>
<div class='title'>Boneka Tersayang</div>
</a></div>
<div class='listitem'><a href='http://www.chordfrenzy.com/chord/6751/ari-lasso-rayuan-gombal-kord-lirik-lagu'>
<div class='subtitle'>Chord Ari Lasso</div>
<div class='title'>Rayuan Gombal</div>
</a></div>
</div>
</div>
</div>
Run Code Online (Sandbox Code Playgroud)
现在,我很困惑如何获得上面的每个ahref、副标题和标题?
我需要它来填充我的数组,如下所示
String[] link=["http://www.chordfrenzy.com/chord/9742/ungu-apa-sih-maumu-kord-lirik-lagu","http://www.chordfrenzy.com/chord/6826/slank-boneka-tersayang-kord-lirik-lagu","http://www.chordfrenzy.com/chord/6751/ari-lasso-rayuan-gombal-kord-lirik-lagu"];
String[] subtitile=["Chord Ungu","Chord Slank","Chord Ari Lasso"];
String[] title=["Apa Sih Maumu","Boneka Tersayang","Rayuan …
Run Code Online (Sandbox Code Playgroud) 我正在尝试使用jsoup编写一个天气刮刮Android应用程序.我有使用Java编写的代码,但即使是我在android中编写的最简单的形式也会引发错误.这是我的代码的一部分:
private class Retrieve_Weather extends AsyncTask<Void, Void, String> {
private final String TAG = "Retrieve_Weather";
protected String doInBackground(Void... params) {
String weatherline= "oTHErly";
Log.i(TAG, weatherline);
Document doc = null;
try {
Log.i(TAG, "trying document...");
doc = Jsoup.connect("http://m.wund.com/cgi-bin/findweather/getForecast?brand=mobile&query=02139").get();
Log.i(TAG, "after document");
weatherline = "newline";
}
catch (IOException except) {
Log.i(TAG, "Cannot Connect", except);
except.printStackTrace();
weatherline = "Can't Connect";
Log.i(TAG, "End stacktrace");
}
Log.i(TAG, weatherline);
return weatherline;
}
@Override
protected void onPreExecute() {
Log.i(TAG, "onPreExecute");
}
@Override
protected void onProgressUpdate(Void... values) { …
Run Code Online (Sandbox Code Playgroud) 给定HTML代码段,
<div align="right">...<div>
<p class="text2">abc</p>
Run Code Online (Sandbox Code Playgroud)
我已经使用jsoup来获取具有属性的所有元素,align
设置为right
.现在我想选择我使用的下一个兄弟姐妹,el.nextElementSibling()
How do I verify that the next element is a p
HTML element with a class of text2
? I am new to jsoup and I am learning as I code. Any help would be appreciated! Thanks!
我是 jsoup 的新手,所以我对如何将修改应用到原始 HTML 文件然后将其作为输出有点困惑。
通过选择 html 部分进行更改后
例如Element elements = doc.select("_____").attr("_____",____);
(因为这个元素只有选定的部分......)
我如何将其应用到原始文档?这样我就可以获得修改后的 HTML 作为输出?
非常感谢
Android 上的 JSoup 没有遵循重定向和/或没有获取所有内容,即使我使用 mobile.twitter.com 也是如此。我知道有可能我只是不知道我做错了什么。
我试过的网址是
https://mobile.twitter.com/BillGates/status/493831856781926402
Run Code Online (Sandbox Code Playgroud)
https://twitter.com/BillGates/status/493831856781926402
Run Code Online (Sandbox Code Playgroud)
private Document getWebPage(String url) {
Document doc = null;
try {
doc = Jsoup.connect(url).get();
} catch (IOException e) {
e.printStackTrace();
}
Log.d(TAG, "Received site: " + doc.html()); // TODO delete this debug line when done
return doc;
}
Run Code Online (Sandbox Code Playgroud) Jsoup包含:contains(text)
将匹配的选择器thetextishere
。如果我只想要完全匹配而不是子字符串怎么办?也就是说,我可以使用什么选择器来匹配,text
但不能匹配superstringoftextishere
?
所以我正在尝试使用jsoup来刮取Reddit的图像,但是当我刮掉某些subreddits如/ r/wallpaper时,我得到了429错误,我想知道如何解决这个问题.完全理解这段代码很糟糕,这是一个非常棒的问题,但我对此完全陌生.无论如何:
import java.io.IOException;
import org.jsoup.Jsoup;
import org.jsoup.nodes.Document;
import org.jsoup.nodes.Element;
import org.jsoup.select.Elements;
import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.File;
import java.io.FileWriter;
import java.io.IOException;
import java.io.InputStreamReader;
import java.net.MalformedURLException;
import java.net.URL;
import java.net.URLConnection;
import java.io.*;
import java.net.URL;
import java.util.logging.Level;
import java.util.logging.Logger;
import java.io.*;
import java.util.logging.Level;
import java.util.logging.Logger;
import org.jsoup.Jsoup;
import org.jsoup.nodes.Attributes;
import org.jsoup.nodes.Document;
import org.jsoup.nodes.Element;
import org.jsoup.select.Elements;
import java.io.IOException;
import java.net.URL;
import java.util.Scanner;
public class javascraper{
public static void main (String[]args) throws MalformedURLException
{
Scanner scan = new Scanner (System.in);
System.out.println("Where do you …
Run Code Online (Sandbox Code Playgroud) 我想在webView上显示推特网站.如何删除/解除/隐藏标题("打开应用程序"消息)?
<header class="CoreLayout-header" role="banner"><div class=" AppHeader"><div class="OpenInAppBar u-cf" jsnamespace="OpenInAppBar"><div class="u-containerWithGutter"><a href="twitter://user?screen_name=nba" jsaction="click:openApp" class="OpenInAppBar-link u-textSmall u-inlineBlock">Open application</a><button class="OpenInAppBar-dismiss u-floatRight" aria-label="?????" jsaction="click:snooze" type="button"><span class="OpenInAppBar-dismissIcon u-alignMiddle Icon Icon--close" role="presentation"><img src="data:image/gif;base64,R0lGODlhFwAkAIAAAP///////yH5BAEKAAEALAAAAAAXACQAAAIbjI+py+0Po5y02ouz3rz7D4biSJbmiabqyjIFADs="><svg viewBox="0 0 46 72"><use fill="currentcolor" xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="/i/rw/svg/c25636093d431d0e28be32cd59239cf6/icon#icon-close"></use></svg></span></button></div></div><div class=" AppBar u-cf" data-scribe-component="top_bar" jsnamespace="AppBar"><div class="u-containerWithGutter"><h1 class="u-floatLeft"><a class="AppBar-item" aria-label="Twitter" href="/" jsaction="homeNav"><span class="AppBar-icon Icon Icon--twitter" role="presentation"><img src="data:image/gif;base64,R0lGODlhAQABAIAAAP///////yH5BAEKAAEALAAAAAABAAEAAAICTAEAOw=="><svg viewBox="0 0 72 72"><use fill="currentcolor" xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="/i/rw/svg/c25636093d431d0e28be32cd59239cf6/icon#icon-twitter"></use></svg></span></a></h1><div class="u-floatRight"><a class="AppBar-search AppBar-item" aria-label="????? ???????" href="/search" role="search" jsaction="search"><span class="AppBar-icon Icon Icon--search" role="presentation"><img src="data:image/gif;base64,R0lGODlhBwAJAIAAAP///////yH5BAEKAAEALAAAAAAHAAkAAAIHjI+py+1cAAA7"><svg viewBox="0 0 56 72"><use fill="currentcolor" xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="/i/rw/svg/c25636093d431d0e28be32cd59239cf6/icon#icon-search"></use></svg></span></a></div></div></div><div class=" SignUpBar"><div class="u-containerWithGutter"><div …
Run Code Online (Sandbox Code Playgroud) 下午好,
通常,我需要通过JSOUP以响应multipart/form-data的形式将数据发送到站点
例如,采用sgeniriruet您的查询的简单形式.
<form action =« localhost:8000 »method =«post»enctype =«multipart/form-data»
<input type =«text»name =«text»value =«text default»
<input type =«file»name = «file1»
<input type =«file»name =«file2»
Submit </ button
</ form
通过浏览器发布回复:
>Request Headers Provisional headers are shown Accept:text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8
Content-Type:multipart/form-data;
boundary=----WebKitFormBoundaryjtkXVNw9YVG1H2P9 Origin:null
Upgrade-Insecure-Requests:1 User-Agent:Mozilla/5.0 (Windows NT 6.1;
WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/47.0.2526.106
Safari/537.36
X-DevTools-Emulate-Network-Conditions-Client-Id:8DCCE949-56FA-4AB0-81B7-DA2BC7960E5C
->Request Payload
------WebKitFormBoundaryjtkXVNw9YVG1H2P9 Content-Disposition: form-data; name=«text»
text default
------WebKitFormBoundaryjtkXVNw9YVG1H2P9 Content-Disposition: form-data; name=«file1»; filename="" Content-Type:
application/octet-stream
------WebKitFormBoundaryjtkXVNw9YVG1H2P9 Content-Disposition: form-data; name=«file2»; filename="" Content-Type:
application/octet-stream
------WebKitFormBoundaryjtkXVNw9YVG1H2P9--
Run Code Online (Sandbox Code Playgroud)
我试图创建一个类似的请求,但没有找到正确的方法,以便服务器收到请求.
我的代码:
Map<String, …
Run Code Online (Sandbox Code Playgroud) 我想在 Java 中使用 JSOUP 废弃在输入字段中的网页中输入的值。服务器已添加输入字段中的值。
在 JavaScript 中,我们使用 id 选择元素,然后使用 轻松获取值.value
,如下图所示。
这是 HTML 的样子
我想知道如何使用 JSOUP 和 Java 来做到这一点。
我正在使用下面的代码通过使用 Jsoup 获取详细信息来从 Google Play 商店获取versionName,但它抛出了一些异常,但最近它工作正常。不知道现在怎么样了?
我的代码是 -
public class VersionChecker extends AsyncTask<String, String, String> {
private String newVersion;
@Override
protected String doInBackground(String... params) {
try {
newVersion = Jsoup.connect("https://play.google.com/store/apps/details?id=" + ParkwayApplication.getInstance().getPackageName() + "&hl=en")
.timeout(30000)
.userAgent("Mozilla/5.0 (Windows; U; WindowsNT 5.1; en-US; rv1.8.1.6) Gecko/20070725 Firefox/2.0.0.6")
.referrer("http://www.google.com")
.get()
.select("div[itemprop=softwareVersion]")
.first()
.ownText();
Log.d("otherhtml", newVersion);
} catch (IOException e) {
e.printStackTrace();
}
return newVersion;
}
}
Run Code Online (Sandbox Code Playgroud)
注意 - 在上面的代码中,select()返回大小 0,当我调用first() 时,它将返回 null,这就是为什么会出现空指针异常。
注意 - 我不知道为什么它最近工作为什么现在不工作?
这里是我的链接试图和 …