以下是一个完整的Python代码示例,用于爬取题库并将其内容写入Word文档。代码结合了requests、BeautifulSoup和python-docx库:

以下是一个完整的Python代码示例,用于爬取题库并将其内容写入Word文档。代码结合了requestsBeautifulSouppython-docx库:

代码示例

Python复制
import requests
from bs4 import BeautifulSoup
from docx import Document

# 爬取网页内容
def get_question_data(url):
    response = requests.get(url)
    if response.status_code == 200:
        # 使用BeautifulSoup解析HTML
        soup = BeautifulSoup(response.content, 'html.parser')
        
        # 假设题目和答案在特定的HTML标签中
        # 根据实际网页结构调整选择器
        questions = soup.find_all('div', class_='question-class')  # 示例选择器
        answers = soup.find_all('div', class_='answer-class')  # 示例选择器
        
        return questions, answers
    else:
        print("网页请求失败")
        return None, None

# 将数据写入Word文档
def save_to_word(questions, answers, output_path):
    doc = Document()
    doc.add_heading('题库内容', level=1)
    
    for i, (question, answer) in enumerate(zip(questions, answers), start=1):
        doc.add_paragraph(f"{i}. {question.get_text()}")
        doc.add_paragraph(f"答案: {answer.get_text()}")
        doc.add_paragraph()  # 添加空行分隔题目

    doc.save(output_path)
    print(f"Word文档已保存到: {output_path}")

# 主程序
if __name__ == "__main__":
    url = "https://example.com/question"  # 替换为实际题库的URL
    output_path = "question_bank.docx"  # 输出的Word文件名

    questions, answers = get_question_data(url)
    if questions and answers:
        save_to_word(questions, answers, output_path)

代码说明

  1. 爬取网页内容
    • 使用requests库发送HTTP请求,获取网页的HTML内容。
    • 使用BeautifulSoup解析HTML,提取题目和答案。根据实际网页结构调整选择器。
  2. 写入Word文档
    • 使用python-docx库创建一个新的Word文档。
    • 将题目和答案逐条写入文档,每个题目和答案之间用空行分隔。
  3. 保存文档
    • 将生成的Word文档保存到本地。

注意事项

  • 确保安装了所需的库:
    bash复制
    pip install requests beautifulsoup4 python-docx
  • 根据目标网页的HTML结构调整选择器。
  • 如果网页内容是动态加载的,可能需要使用Selenium等工具。
希望这个示例对你有帮助!

[自动更新内容]