如何用Python批量爬取小红书帖子标签,并使用pandas库保存为Excel表格
时间: 2023-05-28 20:05:58 浏览: 188
1. 导入所需的库:
```
import requests
from bs4 import BeautifulSoup
import pandas as pd
```
2. 定义函数用于爬取小红书帖子标签:
```
def get_tags(url):
# 发送请求获取页面内容
response = requests.get(url)
soup = BeautifulSoup(response.text, 'html.parser')
# 获取标签
tags = []
for item in soup.select('.note-topics .topic-item'):
tags.append(item.text.strip())
return tags
```
3. 定义函数用于爬取小红书帖子链接:
```
def get_links(page):
# 发送请求获取页面内容
url = f'https://www.xiaohongshu.com/discovery/item/{page}'
response = requests.get(url)
soup = BeautifulSoup(response.text, 'html.parser')
# 获取链接
links = []
for item in soup.select('.note-list li'):
links.append(item.select_one('.title a')['href'])
return links
```
4. 定义主函数用于批量爬取小红书帖子标签,并使用pandas库保存为Excel表格:
```
def main():
# 定义要爬取的页数
pages = range(1, 11)
# 定义要保存的数据列表
data = []
# 循环爬取每一页的链接,并获取标签
for page in pages:
links = get_links(page)
for link in links:
tags = get_tags(link)
data.append({'link': link, 'tags': tags})
# 将数据保存为Excel表格
df = pd.DataFrame(data)
df.to_excel('tags.xlsx', index=False)
```
5. 调用主函数开始爬取:
```
if __name__ == '__main__':
main()
```
以上代码可以批量爬取小红书帖子标签,并使用pandas库保存为Excel表格,你可以根据自己的需要进行修改和优化。
阅读全文