采用requests模块,爬取诗词名句网的作者名称和作者简介并存储在csv文件中。https://www.shicimingju.com/category/all
1条回答 默认 最新
关注
本答案参考 多次询问 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)
- 代码逻辑分析
- 首先,使用
requests
模块发送GET
请求到诗词名句网的作者页面,获取网页的HTML内容。 - 然后,利用
BeautifulSoup
解析HTML内容。通过查找特定的div
元素(class='cont'
)来定位每个作者的相关信息。 - 在每个作者的信息中,通过查找
h3
标签获取作者名称,查找p
标签获取作者简介,并将它们组成一个列表。 - 最后,使用
csv
模块将数据写入到名为authors.csv
的文件中,其中第一行写入列标题['作者名称', '作者简介']
,后续行写入每个作者的名称和简介。
- 首先,使用
请注意:
- 网页结构可能会发生变化,如果运行时出现问题,可能需要根据实际网页结构调整代码中的解析部分。
- 在进行网络爬虫时,请确保遵守目标网站的使用规则和相关法律法规。
解决 无用评论 打赏 举报- 代码逻辑分析