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


Posted in Python onJune 15, 2015

本文实例讲述了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程序设计有所帮助。

Python 相关文章推荐
Python的Tornado框架异步编程入门实例
Apr 24 Python
Python 内置函数complex详解
Oct 23 Python
Python 列表(List) 的三种遍历方法实例 详解
Apr 15 Python
Python查询IP地址归属完整代码
Jun 21 Python
Python实现按学生年龄排序的实际问题详解
Aug 29 Python
浅谈Python实现Apriori算法介绍
Dec 20 Python
python实现简易内存监控
Jun 21 Python
python 列表递归求和、计数、求最大元素的实例
Nov 28 Python
Python函数基础实例详解【函数嵌套,命名空间,函数对象,闭包函数等】
Mar 30 Python
python的re模块使用方法详解
Jul 26 Python
给我一面国旗 python帮你实现
Sep 30 Python
解决Tensorflow2.0 tf.keras.Model.load_weights() 报错处理问题
Jun 12 Python
Python中datetime常用时间处理方法
Jun 15 #Python
Python实现简单截取中文字符串的方法
Jun 15 #Python
构建Python包的五个简单准则简介
Jun 15 #Python
Python中文字符串截取问题
Jun 15 #Python
python获取mp3文件信息的方法
Jun 15 #Python
python实现批量下载新浪博客的方法
Jun 15 #Python
深入理解Python中各种方法的运作原理
Jun 15 #Python
You might like
PHP开发中常用的8个小技巧
2008/08/27 PHP
phpinfo 系统查看参数函数代码
2009/06/05 PHP
PHP取整函数:ceil,floor,round,intval的区别详细解析
2013/08/31 PHP
PHP 使用memcached简单示例分享
2015/03/05 PHP
PHP实现的策略模式简单示例
2017/08/25 PHP
与jquery serializeArray()一起使用的函数,主要来方便提交表单
2011/01/31 Javascript
jQuery1.6 使用方法二
2011/11/23 Javascript
js数组去重的常用方法总结
2014/01/24 Javascript
包含中国城市的javascript对象实例
2015/08/03 Javascript
详解Angular中$cacheFactory缓存的使用
2016/08/19 Javascript
node.js中使用Export和Import的方法
2017/09/18 Javascript
微信小程序picker组件下拉框选择input输入框的实例
2017/09/20 Javascript
详解node单线程实现高并发原理与node异步I/O
2017/09/21 Javascript
使用JQuery实现图片轮播效果的实例(推荐)
2017/10/24 jQuery
AI小程序之语音听写来了,十分钟掌握百度大脑语音听写全攻略
2020/03/13 Javascript
vuex刷新后数据丢失的解决方法
2020/10/18 Javascript
解决Python传递中文参数的问题
2015/08/04 Python
Python 3实战爬虫之爬取京东图书的图片详解
2017/10/09 Python
python中使用正则表达式的后向搜索肯定模式(推荐)
2017/11/11 Python
Python之list对应元素求和的方法
2018/06/28 Python
Python实现按逗号分隔列表的方法
2018/10/23 Python
对python指数、幂数拟合curve_fit详解
2018/12/29 Python
python Pandas库基础分析之时间序列的处理详解
2019/07/13 Python
Django中在xadmin中集成DjangoUeditor过程详解
2019/07/24 Python
Python中logger日志模块详解
2020/08/04 Python
button在IE6/7下的黑边去除方案
2012/12/24 HTML / CSS
size?德国官方网站:英国伦敦的球鞋精品店
2018/03/17 全球购物
宏碁西班牙官网:Acer西班牙
2021/01/08 全球购物
华为的Java面试题
2014/03/07 面试题
会计专业自荐信
2013/12/02 职场文书
创业大赛策划书
2014/03/01 职场文书
2014党员自我评议表范文
2014/09/20 职场文书
党员对照检查材料
2014/09/22 职场文书
复兴之路观后感
2015/06/02 职场文书
2015年学校医务室工作总结
2015/07/20 职场文书
Java实现简易的分词器功能
2021/06/15 Java/Android