按名称搜索地址 link - Jsoup
Search address by name link - Jsoup
如何不通过标题而是通过 link 的描述(在本例中,"następna strona" 表示下一页)和 html 代码获取网址?
更具体地绘制文本
之间的link名称的互联网地址
<a href="/w/index.php?title=Kategoria:angielski_(indeks)&pagefrom=abstract+art#mw-pages" title="Kategoria:angielski (indeks)">następna strona</a>
package outerDictionary;
import java.io.IOException;
import java.util.ArrayList;
import java.util.List;
import org.jsoup.Jsoup;
import org.jsoup.nodes.Document;
import org.jsoup.nodes.Element;
import org.jsoup.select.Elements;
public class adressWWW {
public static void main(String[] args) {
Document doc;
List<String> wikiWords = new ArrayList<String>();
String addresWWW="http://pl.wiktionary.org/w/index.php?title=Kategoria:angielski_(indeks)&pagefrom=abducent#mw-pages";
try {
doc = Jsoup .connect(addresWWW).get();
String title = doc.title();
System.out.println(title);
//Element inDiv = doc.select("a[title=Kategoria:angielski (indeks)]").first();
Element inDiv = doc.select("a[title=Kategoria:angielski (indeks)]następna strona").first();
System.out.println(inDiv);
String row = inDiv.attr("abs:href");
System.out.println("xxx "+row);
// System.out.println(row.text());}
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
for (String x : wikiWords)
System.out.println(x);
System.out.println(wikiWords.size());
}}
你可以测试每个link的文本:
Document doc = Jsoup.connect("http://pl.wiktionary.org/w/index.php?title=Kategoria:angielski_(indeks)&pagefrom=abducent#mw-pages").get();
for( Element element : doc.select("a") )
{
if( element.text().equalsIgnoreCase("następna strona") )
{
System.out.println(element);
}
}
或使用 selector syntax:
// ...
for( Element element : doc.select("a:contains(następna strona)") )
{
System.out.println(element);
}
在这两种情况下,结果都是:
<a href="/w/index.php?title=Kategoria:angielski_(indeks)&pagefrom=abstract+art#mw-pages" title="Kategoria:angielski (indeks)">następna strona</a>
<a href="/w/index.php?title=Kategoria:angielski_(indeks)&pagefrom=abstract+art#mw-pages" title="Kategoria:angielski (indeks)">następna strona</a>
如何不通过标题而是通过 link 的描述(在本例中,"następna strona" 表示下一页)和 html 代码获取网址? 更具体地绘制文本
之间的link名称的互联网地址<a href="/w/index.php?title=Kategoria:angielski_(indeks)&pagefrom=abstract+art#mw-pages" title="Kategoria:angielski (indeks)">następna strona</a>
package outerDictionary;
import java.io.IOException;
import java.util.ArrayList;
import java.util.List;
import org.jsoup.Jsoup;
import org.jsoup.nodes.Document;
import org.jsoup.nodes.Element;
import org.jsoup.select.Elements;
public class adressWWW {
public static void main(String[] args) {
Document doc;
List<String> wikiWords = new ArrayList<String>();
String addresWWW="http://pl.wiktionary.org/w/index.php?title=Kategoria:angielski_(indeks)&pagefrom=abducent#mw-pages";
try {
doc = Jsoup .connect(addresWWW).get();
String title = doc.title();
System.out.println(title);
//Element inDiv = doc.select("a[title=Kategoria:angielski (indeks)]").first();
Element inDiv = doc.select("a[title=Kategoria:angielski (indeks)]następna strona").first();
System.out.println(inDiv);
String row = inDiv.attr("abs:href");
System.out.println("xxx "+row);
// System.out.println(row.text());}
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
for (String x : wikiWords)
System.out.println(x);
System.out.println(wikiWords.size());
}}
你可以测试每个link的文本:
Document doc = Jsoup.connect("http://pl.wiktionary.org/w/index.php?title=Kategoria:angielski_(indeks)&pagefrom=abducent#mw-pages").get();
for( Element element : doc.select("a") )
{
if( element.text().equalsIgnoreCase("następna strona") )
{
System.out.println(element);
}
}
或使用 selector syntax:
// ...
for( Element element : doc.select("a:contains(następna strona)") )
{
System.out.println(element);
}
在这两种情况下,结果都是:
<a href="/w/index.php?title=Kategoria:angielski_(indeks)&pagefrom=abstract+art#mw-pages" title="Kategoria:angielski (indeks)">następna strona</a>
<a href="/w/index.php?title=Kategoria:angielski_(indeks)&pagefrom=abstract+art#mw-pages" title="Kategoria:angielski (indeks)">następna strona</a>