python爬取网页http://10.1.88.252:7000/获取每本书籍名称,书籍章节,章节内容,以书名作为文件夹名新建一个文件夹,此文件夹下有以章节命名的文件夹,每个章节中有相对应的章节内容,用文本文档方式保存
时间: 2023-11-17 14:08:11 浏览: 100
你可以使用Python的requests和BeautifulSoup库来实现爬取网页的功能,再结合os和io库来进行文件操作。以下是一个简单的示例代码:
```python
import os
import requests
from bs4 import BeautifulSoup
# 目标网页URL
url = "http://10.1.88.252:7000/"
# 发送请求并获取HTML响应
response = requests.get(url)
html = response.content.decode('utf-8')
# 使用BeautifulSoup解析HTML响应
soup = BeautifulSoup(html, 'html.parser')
# 遍历每本书籍
for book in soup.find_all('div', class_='book'):
# 获取书籍名称
book_name = book.find('h2', class_='book-name').text.strip()
# 创建以书名命名的文件夹
book_folder = os.path.join(os.getcwd(), book_name)
if not os.path.exists(book_folder):
os.mkdir(book_folder)
# 遍历每个章节
for chapter in book.find_all('div', class_='chapter'):
# 获取章节名称和内容
chapter_name = chapter.find('h3', class_='chapter-name').text.strip()
chapter_content = chapter.find('div', class_='chapter-content').text.strip()
# 创建以章节命名的文件夹
chapter_folder = os.path.join(book_folder, chapter_name)
if not os.path.exists(chapter_folder):
os.mkdir(chapter_folder)
# 保存章节内容到文本文件中
with open(os.path.join(chapter_folder, 'content.txt'), 'w', encoding='utf-8') as f:
f.write(chapter_content)
```
需要注意的是,上述代码中的`os.getcwd()`函数会返回当前Python文件所在的路径,所以请确保Python文件和保存文件的文件夹处于同一目录下。如果不是,可以使用绝对路径来替代。同时,也需要注意网页的具体HTML结构是否与代码中的解析方式一致。
阅读全文