用Python编写一个程序爬取常用搜索引擎网站,如百度
时间: 2024-10-12 07:04:58 浏览: 40
在Python中编写一个简单的网络爬虫用于抓取百度等搜索引擎的结果,通常会使用`requests`库来发送HTTP请求获取网页内容,然后使用`BeautifulSoup`库解析HTML。以下是一个基础示例,展示如何爬取百度首页的前几个搜索结果链接:
```python
import requests
from bs4 import BeautifulSoup
def get_baidu_search_results(keyword):
# 百度搜索URL的基本构造
base_url = "https://www.baidu.com/s"
params = {
'wd': keyword, # 关键词
'ie': 'utf-8', # 编码设置
'tn': 'resultjson_compatible', # 搜索类型,让返回的是json数据
'rn': 5 # 返回结果的数量,这里是前5条
}
# 发送GET请求并获取响应
response = requests.get(base_url, params=params)
# 确保请求成功
if response.status_code == 200:
# 使用BeautifulSoup解析JSON数据
data = response.json()
search_results = data['s'] # 获取搜索结果部分
for result in search_results:
link = result['url']
title = result['title'].strip() # 去除多余的空白
print(f"标题: {title}\n链接: {link}\n")
# 测试爬取关键词为“Python教程”的结果
get_baidu_search_results("Python教程")
```
请注意,这只是一个基础示例,实际的网络爬虫可能会更复杂,需要处理反爬机制、robots.txt文件以及遵守网站使用条款。同时,频繁的爬取可能会对服务器造成压力,因此在使用时需注意合理频率。
阅读全文