2301_81314487 2024-11-29 14:38 采纳率: 0%
浏览 22

关于#爬虫#的问题:爬取诗词名句网的作者名称和作者简介并存储在csv文件中

采用requests模块,爬取诗词名句网的作者名称和作者简介并存储在csv文件中。https://www.shicimingju.com/category/all

  • 写回答

1条回答 默认 最新

  • 越重天 Java领域新星创作者 2024-12-03 12:18
    关注

    本答案参考 多次询问 ChatGPT-3.5 后选择的最佳回答,若是满意,还请采纳,谢谢

    以下是使用Python的requests模块和BeautifulSoup库(用于解析网页内容)来实现爬取诗词名句网的作者名称和作者简介并存储为CSV文件的示例代码:

    import requests
    from bs4 import BeautifulSoup
    import csv
    
    # 目标网址
    url = "https://www.shicimingju.com/chaxun/zuozhe.html"
    
    # 发送请求获取网页内容
    response = requests.get(url)
    soup = BeautifulSoup(response.text, 'html.parser')
    
    # 找到所有作者的元素
    author_elements = soup.find_all('div', class_='cont')
    
    # 用于存储作者名称和简介的数据列表
    data = []
    
    # 遍历每个作者元素
    for author in author_elements:
        author_name = author.find('h3').text
        author_intro = author.find('p').text
        data.append([author_name, author_intro])
    
    # 将数据写入CSV文件
    with open('authors.csv', 'w', newline='', encoding='utf-8') as csvfile:
        writer = csv.writer(csvfile)
        writer.writerow(['作者名称', '作者简介'])
        for row in data:
            writer.writerow(row)
    
    
    1. 代码逻辑分析
      • 首先,使用requests模块发送GET请求到诗词名句网的作者页面,获取网页的HTML内容。
      • 然后,利用BeautifulSoup解析HTML内容。通过查找特定的div元素(class='cont')来定位每个作者的相关信息。
      • 在每个作者的信息中,通过查找h3标签获取作者名称,查找p标签获取作者简介,并将它们组成一个列表。
      • 最后,使用csv模块将数据写入到名为authors.csv的文件中,其中第一行写入列标题['作者名称', '作者简介'],后续行写入每个作者的名称和简介。

    请注意:

    1. 网页结构可能会发生变化,如果运行时出现问题,可能需要根据实际网页结构调整代码中的解析部分。
    2. 在进行网络爬虫时,请确保遵守目标网站的使用规则和相关法律法规。
    评论

报告相同问题?

问题事件

  • 创建了问题 11月29日