fix(book_service): 修复帖子详情页面请求错误处理
- 添加requests.RequestException异常捕获和错误消息返回 - 重构URL构建逻辑到变量中提高代码可读性 - 移除调试打印语句中的baseUrl重复显示 - 在下载方法前添加注释分隔符增强代码结构
This commit is contained in:
@@ -64,12 +64,18 @@ class BookService:
|
||||
return target
|
||||
|
||||
def post_page(self, name, url): # 帖子页面
|
||||
print(f"详情页面 {self.setting["baseUrl"]}{url}")
|
||||
response = self.session.get(f"{self.setting["baseUrl"]}{url}")
|
||||
response.raise_for_status()
|
||||
print(f"详情页面状态码:{str(response.status_code)}")
|
||||
full_url = f"{self.setting['baseUrl']}{url}"
|
||||
try:
|
||||
response = self.session.get(full_url)
|
||||
response.raise_for_status()
|
||||
except requests.RequestException as e:
|
||||
yield f"event: error\ndata: 请求帖子详情失败 {url}: {str(e)}\n\n"
|
||||
return
|
||||
print(f"详情页面 {str(response.status_code)} {full_url}")
|
||||
|
||||
soup = BeautifulSoup(response.text, 'lxml')
|
||||
resource_boxs = soup.select('ignore_js_op')
|
||||
|
||||
for i in resource_boxs:
|
||||
download_dir_path = self.download_path / self.setting["targetDate"]
|
||||
self.create_folder(download_dir_path, name)
|
||||
@@ -193,6 +199,9 @@ class BookService:
|
||||
else:
|
||||
return element.select_one(".by em span").string
|
||||
|
||||
# ------------------------------------------------------------
|
||||
# 下载
|
||||
# ------------------------------------------------------------
|
||||
def book_download(self):
|
||||
print(os.getenv('aa'))
|
||||
self.create_folder(self.download_path, self.setting["targetDate"]) # 创建文件夹
|
||||
|
||||
Reference in New Issue
Block a user