根据提示以及示例,在右侧编辑器 Begin-End 区间补充代码,完善函数 get_data(),批量爬取古诗词作者。src/step1/test.html 为爬取网页的效果代码,可以使用开发者工具审查元素,获取 XPath 的路径信息
时间: 2024-12-08 20:15:29 浏览: 15
威纶通触摸屏宏指令GetData和SetData函数的使用方法示例.docx
5星 · 资源好评率100%
为了帮助您完成这个任务,我们需要先了解一下HTML结构和XPath的选择器。在这个场景中,我们假设 `test.html` 文件包含了一个列表,其中包含古诗词作者的信息,每个作者的信息都存储在一个类似 `<li>` 的元素内。以下是一个简单的代码框架,展示了如何使用Python的BeautifulSoup库来抓取这些数据:
```python
import requests
from bs4 import BeautifulSoup
def get_data():
# 发送请求获取页面内容
url = "file:///path/to/src/step1/test.html" # 将这里的URL替换为实际文件路径
response = requests.get(url)
# 检查请求是否成功
if response.status_code == 200:
# 解析HTML内容
soup = BeautifulSoup(response.text, 'html.parser')
# 使用XPath选择器找到所有包含作者信息的元素
authors_xpath = ".//li[contains(@class, 'author')]"
# 找到并存储作者列表
authors_list = soup.select(authors_xpath)
# 定义一个空列表来保存结果
authors = []
# 遍历每个作者元素
for author_element in authors_list:
# 提取作者名称
author_name = author_element.find('span', class_='name').text
# 添加到结果列表
authors.append(author_name)
return authors
else:
print("Failed to fetch the data.")
return None
# 调用函数并打印结果
authors = get_data()
if authors:
for i, author in enumerate(authors, start=1):
print(f"{i}. {author}")
阅读全文