如何写程序用Python爬取苏轼的词
时间: 2024-06-08 12:00:55 浏览: 7
要爬取苏轼的词,需要先找到存储苏轼词的网站,并确定需要爬取的信息的位置和格式。以下是一个示例程序,用于从“古诗文网”上爬取苏轼的词:
```python
import requests
from bs4 import BeautifulSoup
url = "https://www.gushiwen.org/authors/authorvsw_852.aspx" # 苏轼的词所在页面
headers = {"User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/58.0.3029.110 Safari/537.3"}
# 发送请求并获取响应内容
response = requests.get(url, headers=headers)
response.encoding = "utf-8"
# 解析HTML页面
soup = BeautifulSoup(response.text, "html.parser")
# 获取词的列表
ci_list = soup.find_all("div", class_="sons")[1].find_all("a")
# 遍历词的列表并输出词的内容
for ci in ci_list:
ci_url = ci["href"]
ci_title = ci.text
ci_response = requests.get(ci_url, headers=headers)
ci_response.encoding = "utf-8"
ci_soup = BeautifulSoup(ci_response.text, "html.parser")
ci_content = ci_soup.find("div", class_="contson").text.strip()
print(f"{ci_title}\n{ci_content}\n")
```
该程序使用requests模块向网站发送HTTP请求,并使用BeautifulSoup模块解析HTML页面。程序首先获取苏轼的词所在的页面,然后通过解析页面获取词的列表。接着,程序遍历词的列表,并获取每个词的链接。使用词的链接,程序再次发送HTTP请求获取词的内容,并使用BeautifulSoup解析页面获取词的正文。最后,程序输出每个词的标题和内容。
相关推荐
![rar](https://img-home.csdnimg.cn/images/20210720083606.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)