网络编程
位置:首页>> 网络编程>> Python编程>> python简单实现基于SSL的IRC bot实例

python简单实现基于SSL的IRC bot实例

作者:秋风秋雨  发布时间:2022-05-29 21:18:03 

标签:python,SSL

本文实例讲述了python简单实现基于SSL的 IRC bot。分享给大家供大家参考。具体如下:


#!/usr/bin/python
# -*- coding: utf8 -*-
import socket, string, time, ssl
import urllib, re
network = 'irc.server.net'
nick = 'nickname'
chan = 'bot'
port = 6697
socket = socket.socket(socket.AF_INET,socket.SOCK_STREAM)
def main(network, nick, chan, port):
 socket.connect((network,port))
 irc = ssl.wrap_socket(socket)
 irc.send('NICK %s\r\n' % nick)
 print irc.recv(4096)
 irc.send('USER %s %s %s :My bot\r\n' % (nick,nick,nick))
 print irc.recv(4096)
 irc.send('JOIN #%s\r\n' % chan)
 print irc.recv(4096)
 while True:
   data = irc.recv(4096)
   print data
   if data.find('PING') != -1:
     irc.send('PONG '+data.split()[1]+'\r\n')
   if data.find('!gtfo\r\n') != -1:
     irc.send('QUIT\r\n')
     exit()
   print data
if __name__=='__main__':
 main(network, nick, chan, port)

希望本文所述对大家的Python程序设计有所帮助。

0
投稿

猜你喜欢

  • 一、Hive介绍hive: 由 Facebook 开源用于解决海量结构化日志的数据统计工具。Hive 是基于 Hadoop 的一个数据仓库工
  • 数据字典是Oracle存放有关数据库信息的地方,其用途是用来描述数据的。比如一个表的创建者信息,创建时间信息,所属表空间信息,用户访问权限信
  • 1 集合集合可以使用大括号({})或者set()函数进行创建,但是创建一个空集合必须使用set()函数,而不能用{},大括号是用来创建一个空
  • 1. 哈希算法基础1.1 哈希算法的定义哈希算法(Hash Algorithm)是一种将任意长度的输入数据映射为固定长度哈希值的算法。它具有
  • 遇到的问题当时自己在使用Alexnet训练图像分类问题时,会出现损失在一个epoch中增加,换做下一个epoch时loss会骤然降低,一开始
  •      Javascript中的对像赋值与Java中是一样的,都为引用传递.就是说,在把一个对像赋
  • 本文实例讲述了Python基于xlrd模块操作Excel的方法。分享给大家供大家参考,具体如下:一、使用xlrd读取excel1、xlrd的
  • 使用ktl工具实现mysql向mysql同步数据1.新建作业步骤2.完善作业步骤,主要是完成作业中的转换工作3.首先要确定数据来源库,也就是
  • Flask或者其他框架都是封装的比较完善,我们可以不去关注路由、SESSION等到底是怎么实现的,现在我们使用socket来实现一个带有注册
  • 前言所谓“基础不狠,人站不稳”,对于任何一种编程语言来说基础往往都是重中之重,以Python为例,其
  • 有一个比较大的数据集需要自己处理,在分出训练集和测试集时,如果靠手动实在太麻烦,于是自己写了一段代码。(其实就是在某一路径下的子文件夹里取出
  • 假设要实现一个存放多种类型数据结构的对象,比如一个存放算术操作数和操作符的树结点,需要存放包含一元操作符、二元操作符和数字类型的结点clas
  • 前言一个函数就可以接收另一个函数作为参数,简言之,函数的参数能够接收别的函数,这种函数就称之为高阶函数JavaScript 的高阶函数跟 S
  • 上次 li 把 dl 模拟了~dl不知道要干什么了:green:~找了ol一起来做复合列表~:这个练习除了css外~外加用了点JS :shi
  • requests是python的一个HTTP客户端库,跟urllib,urllib2类似,那为什么要用requests而不用urllib2呢
  • 本文实例讲述了Python实现对PPT文件进行截图操作的方法。分享给大家供大家参考。具体分析如下:下面的代码可以为powerpoint文件p
  • 行业首页改版的缘故,为了让我们设计师可以更好的了解需求、了解我们的用户,和部门的用研童鞋一起讨论决定使用电话来进行用户访谈,以此来了解用户。
  • 本文主要给大家介绍了关于MySQL服务自动停止的解决方法,分享出来供大家参考学习,下面来一起看看:问题描述服务器上安装的 MySQL,会出现
  • 这篇文章主要介绍的是关于JS的命名规范、注释规范以及框架开发的一些问题,首先来看看目录。目录1. 命名规范:介绍变量、函数、常量、构造函数、
  • 一、避免Firefox 背景图不显示的兼容问题,定义background 属性,先后顺序不能随意变动。background : backgr
手机版 网络编程 asp之家 www.aspxhome.com