import java.io.*;
import java.net.URL;
import java.net.URLConnection;
import java.sql.*;
public class linksfind{
public static void main(){
String html = "http://www.apple.com/pr/";
Document document = Jsoup.parse(html); // Can also take an URL.
for (Element element : document.getElementsByTag("a")) {
System.out.println(element.attr("href"));
}
}
}
球员, 在上面的程序中,执行时我发现了这些错误。怎么解决?我已经在我的文件夹位置下载了Jsoup.jar文件。我还应该做什么?
linksfind.java:8: cannot find symbol
symbol : class Document
location: class linksfind
Document document = Jsoup.parse(html); // Can also take a
^
linksfind.java:8: cannot find symbol
symbol : variable Jsoup
location: class linksfind
Document document = Jsoup.parse(html); // Can also take a
^
linksfind.java:9: cannot find symbol
symbol : class Element
location: class linksfind
for (Element element : document.getElementsByTag("a")) {
答案 0 :(得分:10)
当然是Jsoup的那些。
import org.jsoup.nodes.Document;
import org.jsoup.Jsoup;
import org.jsoup.nodes.Element;
也就是说,还有一个问题只会在你运行时出现:你传递的网址是java.lang.String
而不是java.net.URL
。 String
将被视为纯HTML,而不是资源。修复它:
URL url = new URL("http://www.apple.com/pr/");
Document document = Jsoup.parse(url, 3000);
更新:您只需确保在编译时和运行时类路径中都存在Jsoup库。使用javac.exe
和java.exe
时,请使用-cp
参数。例如。编译它:
javac -cp .;/path/to/jsoup.jar com/example/YourClass.java
并执行它:
java -cp .;/path/to/jsoup.jar com.example.YourClass
答案 1 :(得分:0)
看起来你错过了类路径中的jsoup库。然后,您必须导入所需的org.jsoup。*包,
答案 2 :(得分:0)
看起来jsoup.jar在编译期间没有正确拾取并丢失。 Jsoup only has one dependendy (commons lang),所以其他缺少的外部依赖项似乎不是您的直接问题。
如果您不想手动执行,可能需要尝试使用Maven或Ivy来解决依赖关系。