anonymous No title
No License Python
2021年03月15日
Copy Clone
from discord.ext import commands
from discord.utils import get
import discord
import config
import time
import random
import tweepy
from tqdm import tqdm
import requests
import aiohttp

intents = discord.Intents.default()
intents.members = True    

bot = commands.Bot(command_prefix='/',intents=intents)
bot.remove_command("help")

@bot.event
async def on_member_join(member):
    await member.send("__***参加していただきありがとうございます。***__\n***スパムなど迷惑行為がないようにお願いします。***")
    print(member)
    
@bot.event
async def on_ready():
    print('--------------------------------')
    print('Started')
    print('Name:',(bot.user.name))
    print('ID:',(bot.user.id))
    print('--------------------------------')
    print('config.pyを読み込んでいます....')    
    waitsec = random.randint(2, 5)
    for i in tqdm(range(waitsec)):
        time.sleep(1)
    print('config.pyを読み込みました。'+'読み込み時間:'+str(waitsec)+'秒')
    print('--------------------------------')
    activity = discord.Game(name="/help", type=3)
    await bot.change_presence(status=discord.Status, activity=activity)

# =============================================================================
# Twitterオブジェクトの生成
auth = tweepy.OAuthHandler(config.consumer_key, config.consumer_secret)
auth.set_access_token(config.access_token, config.access_token_secret)
api = tweepy.API(auth)
# =============================================================================
    
@bot.command()
async def help(commandhelp):
    embed=discord.Embed(title="コマンドリスト", description="コマンドがわからない人向け", color=0x64fb56)
    embed.set_author(name="製作者 hiromun", url="https://twitter.com/hiromun_main", icon_url="https://pbs.twimg.com/profile_images/1295474755483480065/ccpiHnMI_400x400.jpg")
    embed.add_field(name="/help", value="コマンドリストを表示させる", inline=False)
    embed.add_field(name="/twitter(tw) {ID} {表示させる数}", value="最近呟いた投稿を表示させる", inline=False)
    embed.add_field(name="/dd_all", value="サーバーにいる人数を表示させる(全員)", inline=False)
    embed.add_field(name="/dd_user", value="サーバーにいる人数を表示させる(ユーザーのみ)", inline=False)
    embed.add_field(name="/dd_bot", value="サーバーにいる人数を表示させる(botのみ)", inline=False)
    embed.add_field(name="その他", value="今後追加予定", inline=False)
    embed.set_footer(text="by hiromun")
    await commandhelp.send(embed=embed)

@bot.command()
async def twitter(twitter, arg:str, arg1:int):
    Account = arg #取得したいユーザーのユーザーIDを代入
    tweets = api.user_timeline(Account, count=arg1, page=1)
    num = 1 #ツイート数を計算するための変数
    for tweet in tweets:
        print("-----------------------------------------------------")
        print('twid : ', tweet.id)               # tweetのID
        print('user : ', tweet.user.screen_name)  # ユーザー名
        print('date : ', tweet.created_at)      # 呟いた日時
        print(tweet.text)                  # ツイート内容
        print('favo : ', tweet.favorite_count)  # ツイートのいいね数
        print('retw : ', tweet.retweet_count)  # ツイートのリツイート数
        print('ツイート数 : ', num) # ツイート数
        print('='*1) # =を80個表示
        num += 1 # ツイート数を計算
        print("-----------------------------------------------------")
        
        #ID変数固定
        a1 = tweet.id
        
        #Twitterアイコンの取得
        imgurl = tweet.user.profile_image_url_https
        
        #アカウントpageURL
        URL = 'https://twitter.com/'+str(tweet.user.screen_name)
        print(URL)
        
        #つぶやき内容のURL取得(略)
        URL1 = 'https://twitter.com/'+str(arg) +'/'+'status' +'/' +str(a1)
        print(URL1)
       
        
        #TwitterID
        name = '@'+str(tweet.user.screen_name)
        
        #日時
        day = '日時:'+str(tweet.created_at)
        
        embed=discord.Embed(title=name, url=URL, description=day)
        embed.set_thumbnail(url=imgurl)
        embed.add_field(name="最新のつぶやき", value=tweet.text, inline=False)
        embed.add_field(name="いいね数", value=tweet.favorite_count, inline=True)
        embed.add_field(name="リツイート数", value=tweet.retweet_count, inline=True)
        embed.add_field(name="取得URL", value=URL1, inline=False) 
        await twitter.channel.send(embed=embed)
      
@bot.command()
async def tw(twitter, arg:str, arg1:int):
    Account = arg #取得したいユーザーのユーザーIDを代入
    tweets = api.user_timeline(Account, count=arg1, page=1)
    num = 1 #ツイート数を計算するための変数
    for tweet in tweets:
        print("-----------------------------------------------------")
        print('twid : ', tweet.id)               # tweetのID
        print('user : ', tweet.user.screen_name)  # ユーザー名
        print('date : ', tweet.created_at)      # 呟いた日時
        print(tweet.text)                  # ツイート内容
        print('favo : ', tweet.favorite_count)  # ツイートのいいね数
        print('retw : ', tweet.retweet_count)  # ツイートのリツイート数
        print('ツイート数 : ', num) # ツイート数
        print('='*1) # =を80個表示
        num += 1 # ツイート数を計算
        print("-----------------------------------------------------")
        
        #ID変数固定
        a1 = tweet.id
        
        #Twitterアイコンの取得
        imgurl = tweet.user.profile_image_url_https
        
        #アカウントpageURL
        URL = 'https://twitter.com/'+str(tweet.user.screen_name)
        print(URL)
        
        #つぶやき内容のURL取得(略)
        URL1 = 'https://twitter.com/'+str(tweet.user.screen_name) +'/'+'status' +'/' +str(a1)
        print(URL1)
       
        
        #TwitterID
        name = '@'+str(tweet.user.screen_name)
        
        #日時
        day = '日時:'+str(tweet.created_at)
        
        embed=discord.Embed(title=name, url=URL, description=day)
        embed.set_thumbnail(url=imgurl)
        embed.add_field(name="最新のつぶやき", value=tweet.text, inline=False)
        embed.add_field(name="いいね数", value=tweet.favorite_count, inline=True)
        embed.add_field(name="リツイート数", value=tweet.retweet_count, inline=True)
        embed.add_field(name="取得URL", value=URL1, inline=False) 
        await twitter.channel.send(embed=embed)

@bot.command()
async def dd_all(dd):
    guild = dd.guild
    member_count = guild.member_count
    await dd.channel.send(f'メンバー数:{member_count}')

    embed=discord.Embed(title="Discord メンバー数", description="全員")
    embed.add_field(name="人数", value=member_count, inline=True)
    await dd.send(embed=embed)
    
@bot.command()
async def dd_user(dd):
    guild = dd.guild
    user_count = sum(1 for member in guild.members if not member.bot)
    await dd.channel.send(f'ユーザ数:{user_count}')
    
    embed=discord.Embed(title="Discord メンバー数", description="ユーザーのみ")
    embed.add_field(name="人数", value=user_count, inline=True)
    await dd.send(embed=embed)
    
@bot.command()
async def dd_bot(dd):
    guild = dd.guild
    bot_count = sum(1 for member in guild.members if member.bot)
    await dd.channel.send(f'BOT数:{bot_count}')
    
    embed=discord.Embed(title="Discord メンバー数", description="Botのみ")
    embed.add_field(name="人数", value=bot_count, inline=True)
    await dd.send(embed=embed)
    
@bot.command()
async def join(ctx):
    channel = ctx.author.voice.channel
    await channel.connect()
    
@bot.command()
async def leave(ctx):
    await ctx.voice_client.disconnect()
    return

#discrd bot Token
bot.run("config.token")
from discord.ext import commands
from discord.utils import get
import discord
import config
import time
import random
import tweepy
from tqdm import tqdm
import requests
import aiohttp

intents = discord.Intents.default()
intents.members = True    

bot = commands.Bot(command_prefix='/',intents=intents)
bot.remove_command("help")

@bot.event
async def on_member_join(member):
    await member.send("__***参加していただきありがとうございます。***__\n***スパムなど迷惑行為がないようにお願いします。***")
    print(member)
    
@bot.event
async def on_ready():
    print('--------------------------------')
    print('Started')
    print('Name:',(bot.user.name))
    print('ID:',(bot.user.id))
    print('--------------------------------')
    print('config.pyを読み込んでいます....')    
    waitsec = random.randint(2, 5)
    for i in tqdm(range(waitsec)):
        time.sleep(1)
    print('config.pyを読み込みました。'+'読み込み時間:'+str(waitsec)+'秒')
    print('--------------------------------')
    activity = discord.Game(name="/help", type=3)
    await bot.change_presence(status=discord.Status, activity=activity)

# =============================================================================
# Twitterオブジェクトの生成
auth = tweepy.OAuthHandler(config.consumer_key, config.consumer_secret)
auth.set_access_token(config.access_token, config.access_token_secret)
api = tweepy.API(auth)
# =============================================================================
    
@bot.command()
async def help(commandhelp):
    embed=discord.Embed(title="コマンドリスト", description="コマンドがわからない人向け", color=0x64fb56)
    embed.set_author(name="製作者 hiromun", url="https://twitter.com/hiromun_main", icon_url="https://pbs.twimg.com/profile_images/1295474755483480065/ccpiHnMI_400x400.jpg")
    embed.add_field(name="/help", value="コマンドリストを表示させる", inline=False)
    embed.add_field(name="/twitter(tw) {ID} {表示させる数}", value="最近呟いた投稿を表示させる", inline=False)
    embed.add_field(name="/dd_all", value="サーバーにいる人数を表示させる(全員)", inline=False)
    embed.add_field(name="/dd_user", value="サーバーにいる人数を表示させる(ユーザーのみ)", inline=False)
    embed.add_field(name="/dd_bot", value="サーバーにいる人数を表示させる(botのみ)", inline=False)
    embed.add_field(name="その他", value="今後追加予定", inline=False)
    embed.set_footer(text="by hiromun")
    await commandhelp.send(embed=embed)

@bot.command()
async def twitter(twitter, arg:str, arg1:int):
    Account = arg #取得したいユーザーのユーザーIDを代入
    tweets = api.user_timeline(Account, count=arg1, page=1)
    num = 1 #ツイート数を計算するための変数
    for tweet in tweets:
        print("-----------------------------------------------------")
        print('twid : ', tweet.id)               # tweetのID
        print('user : ', tweet.user.screen_name)  # ユーザー名
        print('date : ', tweet.created_at)      # 呟いた日時
        print(tweet.text)                  # ツイート内容
        print('favo : ', tweet.favorite_count)  # ツイートのいいね数
        print('retw : ', tweet.retweet_count)  # ツイートのリツイート数
        print('ツイート数 : ', num) # ツイート数
        print('='*1) # =を80個表示
        num += 1 # ツイート数を計算
        print("-----------------------------------------------------")
        
        #ID変数固定
        a1 = tweet.id
        
        #Twitterアイコンの取得
        imgurl = tweet.user.profile_image_url_https
        
        #アカウントpageURL
        URL = 'https://twitter.com/'+str(tweet.user.screen_name)
        print(URL)
        
        #つぶやき内容のURL取得(略)
        URL1 = 'https://twitter.com/'+str(arg) +'/'+'status' +'/' +str(a1)
        print(URL1)
       
        
        #TwitterID
        name = '@'+str(tweet.user.screen_name)
        
        #日時
        day = '日時:'+str(tweet.created_at)
        
        embed=discord.Embed(title=name, url=URL, description=day)
        embed.set_thumbnail(url=imgurl)
        embed.add_field(name="最新のつぶやき", value=tweet.text, inline=False)
        embed.add_field(name="いいね数", value=tweet.favorite_count, inline=True)
        embed.add_field(name="リツイート数", value=tweet.retweet_count, inline=True)
        embed.add_field(name="取得URL", value=URL1, inline=False) 
        await twitter.channel.send(embed=embed)
      
@bot.command()
async def tw(twitter, arg:str, arg1:int):
    Account = arg #取得したいユーザーのユーザーIDを代入
    tweets = api.user_timeline(Account, count=arg1, page=1)
    num = 1 #ツイート数を計算するための変数
    for tweet in tweets:
        print("-----------------------------------------------------")
        print('twid : ', tweet.id)               # tweetのID
        print('user : ', tweet.user.screen_name)  # ユーザー名
        print('date : ', tweet.created_at)      # 呟いた日時
        print(tweet.text)                  # ツイート内容
        print('favo : ', tweet.favorite_count)  # ツイートのいいね数
        print('retw : ', tweet.retweet_count)  # ツイートのリツイート数
        print('ツイート数 : ', num) # ツイート数
        print('='*1) # =を80個表示
        num += 1 # ツイート数を計算
        print("-----------------------------------------------------")
        
        #ID変数固定
        a1 = tweet.id
        
        #Twitterアイコンの取得
        imgurl = tweet.user.profile_image_url_https
        
        #アカウントpageURL
        URL = 'https://twitter.com/'+str(tweet.user.screen_name)
        print(URL)
        
        #つぶやき内容のURL取得(略)
        URL1 = 'https://twitter.com/'+str(tweet.user.screen_name) +'/'+'status' +'/' +str(a1)
        print(URL1)
       
        
        #TwitterID
        name = '@'+str(tweet.user.screen_name)
        
        #日時
        day = '日時:'+str(tweet.created_at)
        
        embed=discord.Embed(title=name, url=URL, description=day)
        embed.set_thumbnail(url=imgurl)
        embed.add_field(name="最新のつぶやき", value=tweet.text, inline=False)
        embed.add_field(name="いいね数", value=tweet.favorite_count, inline=True)
        embed.add_field(name="リツイート数", value=tweet.retweet_count, inline=True)
        embed.add_field(name="取得URL", value=URL1, inline=False) 
        await twitter.channel.send(embed=embed)

@bot.command()
async def dd_all(dd):
    guild = dd.guild
    member_count = guild.member_count
    await dd.channel.send(f'メンバー数:{member_count}')

    embed=discord.Embed(title="Discord メンバー数", description="全員")
    embed.add_field(name="人数", value=member_count, inline=True)
    await dd.send(embed=embed)
    
@bot.command()
async def dd_user(dd):
    guild = dd.guild
    user_count = sum(1 for member in guild.members if not member.bot)
    await dd.channel.send(f'ユーザ数:{user_count}')
    
    embed=discord.Embed(title="Discord メンバー数", description="ユーザーのみ")
    embed.add_field(name="人数", value=user_count, inline=True)
    await dd.send(embed=embed)
    
@bot.command()
async def dd_bot(dd):
    guild = dd.guild
    bot_count = sum(1 for member in guild.members if member.bot)
    await dd.channel.send(f'BOT数:{bot_count}')
    
    embed=discord.Embed(title="Discord メンバー数", description="Botのみ")
    embed.add_field(name="人数", value=bot_count, inline=True)
    await dd.send(embed=embed)
    
@bot.command()
async def join(ctx):
    channel = ctx.author.voice.channel
    await channel.connect()
    
@bot.command()
async def leave(ctx):
    await ctx.voice_client.disconnect()
    return

#discrd bot Token
bot.run("config.token")
anonymous
Anonymous
2021年03月15日
本人ですが、汚いっすね このコード
Output