Heim  >  Fragen und Antworten  >  Hauptteil

java - Problem beim Crawlen von Bildern?

Ich habe es gerade geändert POM, Sie können den Quellcode erneut herunterladen

Dies ist die Projektadresse des Crawlers, den ich geschrieben habe
Das Projekt meldet keinen Fehler, aber das Problem besteht darin, dass das Bild nach dem Herunterladen des Bildes in den lokalen Bereich oft unvollständig ist, wie folgt:

Dies ist der Kerncode zum Herunterladen von Bildern, wie folgt:

@Override
    public void run() {
        Response res = null;
        try {
            res = Jsoup.connect(src).ignoreContentType(true).timeout(30000).execute();
            byte[] bytes = res.bodyAsBytes();
            File file = new File(path + name);
            if (!file.exists()) {
                RandomAccessFile raf = new RandomAccessFile(file, "rw");
                raf.write(bytes);
                raf.close();
            }
        } catch (IOException e1) {
            e1.printStackTrace();
        }
    }

Nach der Datenabfrage habe ich das Gefühl, dass es sich um ein Problem mit der Scope-Anfrage handelt Range oder um ein Problem, das ich nicht gefunden habe? Ich hoffe, Sie können einen Blick darauf werfen, danke

天蓬老师天蓬老师2675 Tage vor809

Antworte allen(1)Ich werde antworten

  • typecho

    typecho2017-06-23 09:14:30

    1. 感觉是响应数据没获取完整,你debug一下看看响应的实际数据大小和你保存的数据大小是否有出入。

    2. 又或者因为还有一部分数据还在缓冲区中,没来得及写到文件,此时进程退出,导致数据不完整,关闭文件流之前执行一下flush操作。

    Antwort
    0
  • StornierenAntwort