python爬取微博代码
时间: 2023-07-22 09:54:04 浏览: 95
以下是使用 Python 爬取微博的示例代码:
```python
import requests
from bs4 import BeautifulSoup
# 设置请求头
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'}
# 构造微博搜索 URL
url = 'https://s.weibo.com/weibo?q={}&typeall=1&suball=1×cope=custom:{}:{}&Refer=g'
# 搜索关键词
keyword = 'Python'
# 设置搜索时间范围(起始日期和终止日期)
start_date = '20200101'
end_date = '20201231'
# 构造 URL
url = url.format(keyword, start_date, end_date)
# 发送请求
response = requests.get(url, headers=headers)
# 解析 HTML 页面
soup = BeautifulSoup(response.text, 'html.parser')
# 获取搜索结果
results = soup.select('div[class="card-wrap"]')
# 打印搜索结果
for result in results:
print(result.text.strip())
```
解释一下代码:
1. 首先导入需要的模块:`requests` 用于发送 HTTP 请求,`BeautifulSoup` 用于解析 HTML 页面。
2. 设置请求头,模拟浏览器发送请求。
3. 构造微博搜索的 URL,其中关键词、起始日期和终止日期都是可以自己设置的。
4. 发送请求,获取搜索结果的 HTML 页面。
5. 使用 `BeautifulSoup` 解析 HTML 页面,获取搜索结果。
6. 打印搜索结果。
注意:微博有反爬机制,频繁爬取可能会被封 IP,建议使用代理或者延长爬取时间间隔。
阅读全文