gpt4 book ai didi

java - 如何让这段代码重复多次

转载 作者:行者123 更新时间:2023-12-01 17:50:59 25 4
gpt4 key购买 nike

我的代码提取链接并将它们添加到 HashSet 中。我希望该链接替换原始链接并重复该过程,直到找不到更多新链接可以添加。程序继续运行,但链接没有更新,程序陷入无限循环,什么也不做。如何更新链接,以便程序可以重复,直到找不到更多链接?

package downloader;

import java.io.IOException;
import java.net.URL;
import java.util.HashSet;
import java.util.Scanner;
import java.util.Set;

import org.jsoup.Jsoup;
import org.jsoup.nodes.Document;
import org.jsoup.nodes.Element;
import org.jsoup.select.Elements;

public class Stage2 {
public static void main(String[] args) throws IOException {

int q = 0;
int w = 0;


HashSet<String> chapters = new HashSet();
String seen = new String("/manga/manabi-ikiru-wa-fuufu-no-tsutome/i1778063/v1/c1");
String source = new String("https://mangapark.net" + seen);
// 0123456789
while( q == w ) {



String source2 = new String(source.substring(21));

String last = new String(source.substring(source.length() - 12));
String last2 = new String(source.substring(source.length() - 1));


chapters.add(seen);
for (String link : findLinks(source)) {

if(link.contains("/manga") && !link.contains(last) && link.contains("/i") && link.contains("/c") && !chapters.contains(link)) {
chapters.add(link);
System.out.println(link);
seen = link;


System.out.print(chapters);
System.out.println(seen);
}

}

}

System.out.print(chapters);



}

private static Set<String> findLinks(String url) throws IOException {

Set<String> links = new HashSet<>();

Document doc = Jsoup.connect(url)
.data("query", "Java")
.userAgent("Mozilla")
.cookie("auth", "token")
.timeout(3000)
.get();

Elements elements = doc.select("a[href]");
for (Element element : elements) {
links.add(element.attr("href"));
}


return links;

}

}

最佳答案

你的计划并没有停止,因为你的条件永远不会改变:

while( q == w )

始终为真。我运行你的代码没有一会儿,我得到了 2 个链接打印两次(!)并且程序停止。

如果你想要其他章节的链接,你会遇到和我一样的问题。在元素中

Element element = doc.getElementById("sel_book_1");

链接位于伪元素::before之后。所以它们不会出现在你的 Jsoup 文档中。

这是我对此主题的问题:

How can I find a HTML tag with the pseudoElement ::before in jsoup

关于java - 如何让这段代码重复多次,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60795178/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com