python爬取 百度百科
时间: 2024-09-29 18:00:58 浏览: 76
教你用python3根据关键词爬取百度百科的内容
Python爬取百度百科通常是通过网络抓取库如`requests`来获取网页内容,然后使用`BeautifulSoup`或`lxml`等解析工具解析HTML结构,提取所需的信息。以下是一个简单的步骤概述:
1. **安装必要的库**:首先需要安装`requests`, `beautifulsoup4`(或`lxml`),可以使用pip命令:
```
pip install requests beautifulsoup4
```
2. **发送HTTP请求**:使用`requests.get()`函数向百度百科URL发送GET请求,并获取响应内容。
3. **解析HTML**:将获取的网页源码传递给`BeautifulSoup`或`lxml`,创建一个文档对象树(DOM),便于查找元素。
4. **定位目标信息**:通过CSS选择器或XPath表达式找到包含你需要数据的部分。
5. **提取数据**:利用`find_all()`, `select()`或其他相应方法,提取需要的数据,通常存储到列表、字典或其他数据结构中。
6. **处理和保存数据**:对提取的数据进行清洗和整理,然后存入CSV文件、数据库或JSON文件等。
下面是一个简化的示例代码片段:
```python
import requests
from bs4 import BeautifulSoup
def fetch_baike(keyword):
url = f"https://baike.baidu.com/item/{keyword}"
response = requests.get(url)
soup = BeautifulSoup(response.text, "html.parser")
# 示例:假设我们想要标题和摘要
titles = [title.text for title in soup.select(".lemmaWgtitle")]
summaries = [summary.text for summary in soup.select(".lemmaDesc")]
return titles, summaries
# 使用关键词查询并打印结果
titles, summaries = fetch_baike("Python语言")
for i in range(min(len(titles), len(summaries))):
print(f"标题:{titles[i]} \n摘要:{summaries[i]}\n")
阅读全文