From 9f9a5683221dea37fa3b2a76a000e354e4ca9fa5 Mon Sep 17 00:00:00 2001 From: guozhigq Date: Wed, 13 Nov 2024 00:27:47 +0800 Subject: [PATCH] fix: cv load failed --- lib/http/init.dart | 7 +++++++ lib/http/read.dart | 3 ++- 2 files changed, 9 insertions(+), 1 deletion(-) diff --git a/lib/http/init.dart b/lib/http/init.dart index 7eb15644..e820102a 100644 --- a/lib/http/init.dart +++ b/lib/http/init.dart @@ -217,6 +217,13 @@ class Request { if (extra['ua'] != null) { options.headers = {'user-agent': headerUa(type: extra['ua'])}; } + if (extra['opus-goback'] != null) { + if (extra['opus-goback'] != null) { + String cookieHeader = dio.options.headers['cookie']; + options.headers!['cookie'] = + '$cookieHeader; opus-goback = ${extra['opus-goback']}'; + } + } } options.responseType = resType; diff --git a/lib/http/read.dart b/lib/http/read.dart index 68e72e59..5ea33519 100644 --- a/lib/http/read.dart +++ b/lib/http/read.dart @@ -1,4 +1,5 @@ import 'dart:convert'; +import 'package:dio/dio.dart'; import 'package:html/parser.dart'; import 'package:pilipala/models/read/opus.dart'; import 'package:pilipala/models/read/read.dart'; @@ -64,7 +65,7 @@ class ReadHttp { static Future parseArticleCv({required String id}) async { var res = await Request().get( 'https://www.bilibili.com/read/cv$id', - extra: {'ua': 'pc'}, + extra: {'ua': 'pc', 'opus-goback': '1'}, ); String scriptContent = extractScriptContents(parse(res.data).body!.outerHtml)[0];