请编写出小红书抓爬的Python代码
时间: 2023-06-16 14:07:10 浏览: 96
爬取小红书数据的python项目
小红书的数据抓取可以通过模拟登录和发送请求获取,以下是一个简单的 Python 代码示例:
```python
import requests
import json
import time
# 模拟登录获取cookie
# ...
# 构造请求头
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',
'Cookie': 'your cookie value',
'Referer': 'https://www.xiaohongshu.com/'
}
# 请求数据
url = 'https://www.xiaohongshu.com/api/sns/v3/search/note'
params = {
'keyword': '时尚',
'page': 1,
'sort': 'general',
'source': 'search',
'type': 'note'
}
response = requests.get(url, headers=headers, params=params)
# 解析数据
data = json.loads(response.text)
notes = data['data']['notes']
for note in notes:
print(note['title'], note['user']['nickname'])
# 可以将数据存储到数据库中
# 翻页
while data['data']['has_more']:
time.sleep(1) # 防止请求过于频繁被封
params['page'] += 1
response = requests.get(url, headers=headers, params=params)
data = json.loads(response.text)
notes = data['data']['notes']
for note in notes:
print(note['title'], note['user']['nickname'])
# 可以将数据存储到数据库中
```
需要注意的是,小红书可能会对频繁访问和请求进行限制,建议添加适当的延时和异常处理机制。此外,抓取数据时应该遵守相关法律法规和用户协议。
阅读全文