python爬虫微博热搜并写入excel文件保存
时间: 2023-08-05 11:58:05 浏览: 149
好的,这个问题可以分为以下几个步骤来实现:
1. 导入需要用到的库,包括 requests、BeautifulSoup、openpyxl。
2. 使用 requests 库向微博热搜页面发送 GET 请求,获取页面的 HTML 代码。
3. 使用 BeautifulSoup 库解析 HTML 代码,获取热搜榜单的信息。
4. 使用 openpyxl 库创建一个 Excel 文件,并将热搜榜单的信息写入到文件中。
下面是代码实现:
```python
import requests
from bs4 import BeautifulSoup
from openpyxl import Workbook
# 1. 导入需要用到的库
# 2. 发送 GET 请求,获取页面的 HTML 代码
url = 'https://s.weibo.com/top/summary'
response = requests.get(url)
html = response.text
# 3. 解析 HTML 代码,获取热搜榜单的信息
soup = BeautifulSoup(html, 'html.parser')
table = soup.find('table', class_='ptable')
rows = table.tbody.find_all('tr')
hot_searches = []
for row in rows:
cells = row.find_all('td')
rank = cells[0].text.strip()
keyword = cells[1].text.strip()
hot_degree = cells[2].text.strip()
hot_searches.append([rank, keyword, hot_degree])
# 4. 创建一个 Excel 文件,并将热搜榜单的信息写入到文件中
wb = Workbook()
ws = wb.active
# 写入表头
ws.append(['排名', '关键词', '热度'])
# 写入热搜榜单信息
for hot_search in hot_searches:
ws.append(hot_search)
# 保存 Excel 文件
wb.save('hot_searches.xlsx')
```
以上代码会抓取微博热搜榜单的排名、关键词和热度,并将这些信息保存在一个 Excel 文件中。
阅读全文