小编Wil*_*ula的帖子

使用python在discord上抓取数据

我目前正在尝试学习网络抓取并决定抓取一些不和谐的数据。代码如下:

import requests
import json

def retrieve_messages(channelid):
    num=0
    headers = {
        'authorization': 'here we enter the authorization code'
    }
    r = requests.get(
        f'https://discord.com/api/v9/channels/{channelid}/messages?limit=100',headers=headers
        )
    jsonn = json.loads(r.text)
    for value in jsonn:
        print(value['content'], '\n')
        num=num+1
    print('number of messages we collected is',num)

retrieve_messages('server id goes here')
Run Code Online (Sandbox Code Playgroud)

问题:当我尝试更改此处的限制时,messages?limit=100显然它只接受 0 到 100 之间的数字,这意味着我可以获得的最大消息数是 100。例如,我尝试将此数字更改为 900,以抓取更多消息。但后来我得到了错误TypeError: string indices must be integers

关于如何获取频道中的所有消息有什么想法吗?

非常感谢您的阅读!

python web-scraping discord

4
推荐指数
1
解决办法
1万
查看次数

标签 统计

discord ×1

python ×1

web-scraping ×1