Java 读取HTML页面并使用JSOUP创建文本文件

Java 读取HTML页面并使用JSOUP创建文本文件,java,jsoup,Java,Jsoup,我正在努力阅读IMDB列出的前50部电影。代码工作正常,但它在50个列表中的第43位停止读取 public class FetchData { public static void main(String[] args) { try { // TODO code application logic here Document doc = Jsoup.connect("https://www.imdb.com/list/ls053181721/").use

我正在努力阅读IMDB列出的前50部电影。代码工作正常,但它在50个列表中的第43位停止读取

public class FetchData {

public static void main(String[] args) {
    try {
        // TODO code application logic here
        Document doc = Jsoup.connect("https://www.imdb.com/list/ls053181721/").userAgent("Mozilla/17.0").get();
        Elements temp = doc.select("div.lister-item-content");

        int i=0;
        File file = new File("C:\\Demo Java\\IMDBList.txt");
        FileWriter writer = new FileWriter(file);
        for(Element movieList : temp) {
            i++;
            System.out.println(i+" "+movieList.getElementsByTag("a").first().text());
            writer.write(+i+". "+movieList.getElementsByTag("a").first().text().toString()+"\n");

        }
        writer.close();
    } catch (IOException ex) {
        Logger.getLogger(FetchData.class.getName()).log(Level.SEVERE, null, ex);
    }

}

通过Jsoup加载的html文档不会完全加载,因为它超过了默认的最大正文大小1MB。您需要增加请求的最大允许正文大小,以便加载完整文档

Document doc = Jsoup.connect("https://www.imdb.com/list/ls053181721/")
                    .userAgent("Mozilla/17.0")
                    .maxBodySize(0)
                    .get();
注意:添加
maxBodySize(0)
允许无限大小


请参阅:

列表中的一些名称是用另一种语言显示的,而不是用英语显示的。你能帮我吗?当我运行你的代码时,我会得到所有的英文文本。如果您添加并指定确切的问题,将能够提供帮助。