吾爱破解 - 52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 813|回复: 14
收起左侧

[讨论] android jsoup爬取数据

[复制链接]
fff123123 发表于 2023-7-7 09:21
本帖最后由 fff123123 于 2023-7-11 17:51 编辑

爬取的小说内容数据是使用数据库保存好还是使用文件保存好?

已解决问题----无法返回html,问题:连接超时——原因:1使用ip代 理时连接超时
                  ----在我把jsoup请求函数封装成工具类方法时报错:无法解析符号 'request_result'----未知类: 'request_result'----应为标识符----意外的标记——原因:不同请求方法的回调函数都应该不一样的
下面的是修改好的源代码
//getData的回调函数  不同请求方法的回调函数都应该不一样的
public interface OnCompleteListener {
    void onComplete(String request_result);
}

//方法二 开启子线程请求数据
// `listener`:一个回调函数,用于在获取完数据后通知调用者。
public static void getData(String url, OnCompleteListener listener) {
    new Thread(new Runnable() {
        String request_result="";
        @Override
        public void run() {
            Document document = null;
            try {
                Connection connection=Jsoup.connect(url);
                Thread.sleep(2000);
                document = connection
                        .timeout(8000)
                        .userAgent(useragent.get(0))
                        .get();
                Thread.sleep(1000);
                // 查找 tbody 元素
                Elements tbody = document.select("tbody");
                if (tbody.size() > 0) {
                    // 提取 tbody 元素的 HTML 内容
                    String tbodyHtml = tbody.get(0).html();
                    request_result=tbodyHtml;
                }
            } catch (IOException e) {
                e.printStackTrace();
            } catch (InterruptedException e) {
                throw new RuntimeException(e);
            }
            if (listener != null) {
                listener.onComplete(request_result);
            }
        }
    }).start();
}

发帖前要善用论坛搜索功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。

CCCjaVA 发表于 2023-7-7 09:51
Elements elementTitle=result.select("tbody");

网页没有tbody 标签
 楼主| fff123123 发表于 2023-7-7 10:05
CCCjaVA 发表于 2023-7-7 09:51
Elements elementTitle=result.select("tbody");

网页没有tbody 标签

我去掉了查找tbody代码
但是仍然无法返回
在调试的时候
我发现是在.get后直接跳转到了第一个catch
CCCjaVA 发表于 2023-7-7 10:13
fff123123 发表于 2023-7-7 10:05
我去掉了查找tbody代码
但是仍然无法返回
在调试的时候

异常日志呢?
 楼主| fff123123 发表于 2023-7-7 10:18

第一个异常日志,我感觉应该不是这个原因
2023-07-07 10:16:49.913   477-477   wifi_forwarder          wifi_forwarder                       E  qemu_pipe_open_ns:62: Could not connect to the 'pipe:qemud:wififorward' service: Invalid argument
2023-07-07 10:16:49.913   477-477   wifi_forwarder          wifi_forwarder                       E  RemoteConnection failed to initialize: RemoteConnection failed to open pipe
2023-07-07 10:16:50.146   208-210   android.sy....0-service android.system.suspend@1.0-service   E  Error opening kernel wakelock stats for: wakeup34: Permission denied
2023-07-07 10:16:50.151   208-210   android.sy....0-service android.system.suspend@1.0-service   E  Error opening kernel wakelock stats for: wakeup35: Permission denied
 楼主| fff123123 发表于 2023-7-7 10:20
fff123123 发表于 2023-7-7 10:18
第一个异常日志,我感觉应该不是这个原因
2023-07-07 10:16:49.913   477-477   wifi_forwarder         ...

第二个异常日志
2023-07-07 10:16:50.265   455-455   netmgr                  netmgr                               E  qemu_pipe_open_ns:62: Could not connect to the 'pipe:qemud:network' service: Invalid argument
2023-07-07 10:16:50.265   455-455   netmgr                  netmgr                               E  Failed to open QEMU pipe 'qemud:network': Invalid argument
2023-07-07 10:16:50.805  1379-18312 blor                    com.google.android.gms               E  Trace scheduler-ServiceConnection_com.google.android.gms.auth.account.be.legacy.AuthCronService_onServiceConnected timed out after 2370852 ms. Complete trace: # blpa@e81a129b
                                                                                                    blpe:
                                                                                                            at tk_trace.checkActiveTasksTimeout(Started After:0)
                                                                                                            at tk_trace.checkQueueEagerly(Started After:0)
                                                                                                            at tk_trace.trigger_EXECUTION_CALLBACK(Started After:0)
                                                                                                            at tk_trace.ScheduledTaskImpl(Started After:0)
                                                                                                            at tk_trace.auth_account_base-AuthCronChimeraService_onRunTaskAsync(Started After:0)
                                                                                                            at tk_trace.scheduler-ServiceConnection_com.google.android.gms.auth.account.be.legacy.AuthCronService_onServiceConnected(Started After:0)
第三个异常日志
2023-07-07 10:17:10.814   606-784   WifiScoringParams       system_process                       E  Invalid frequency(-1), using 5G as default rssi array
第四个
2023-07-07 10:17:16.766   208-210   android.sy....0-service android.system.suspend@1.0-service   E  Error opening kernel wakelock stats for: wakeup34: Permission denied
 楼主| fff123123 发表于 2023-7-7 10:26
我的好像是请求超时了
我去掉了timeout
但是还是跳转到第一个catch
exception:java.net.SocketTimeoutException: failed to connect to /60.182.184.172 (port 8888) from /10.0.2.15 (port 45408) after 30000ms
屏幕截图 2023-07-07 102607.png
 楼主| fff123123 发表于 2023-7-7 10:48
我发现了是我使用ip代{过}{滤}理的时候连接超时了报错
CCCjaVA 发表于 2023-7-7 11:01
fff123123 发表于 2023-7-7 10:48
我发现了是我使用ip代{过}{滤}理的时候连接超时了报错

那就是代{过}{滤}理的原因  我这边访问了也是超时
CCCjaVA 发表于 2023-7-7 11:04
fff123123 发表于 2023-7-7 10:48
我发现了是我使用ip代{过}{滤}理的时候连接超时了报错

你服务器的端口ping不通
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

返回列表

RSS订阅|小黑屋|处罚记录|联系我们|吾爱破解 - LCG - LSG ( 京ICP备16042023号 | 京公网安备 11010502030087号 )

GMT+8, 2024-11-24 22:43

Powered by Discuz!

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表