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中的面向对象编程的概念
Apr 27 Python
详解PyTorch批训练及优化器比较
Apr 28 Python
用TensorFlow实现lasso回归和岭回归算法的示例
May 02 Python
Python之list对应元素求和的方法
Jun 28 Python
Python实现监控键盘鼠标操作示例【基于pyHook与pythoncom模块】
Sep 04 Python
python微元法计算函数曲线长度的方法
Nov 08 Python
python实现QQ批量登录功能
Jun 19 Python
python定位xpath 节点位置的方法
Aug 27 Python
Python Django中的STATIC_URL 设置和使用方式
Mar 27 Python
解决python中显示图片的plt.imshow plt.show()内存泄漏问题
Apr 24 Python
python之PySide2安装使用及QT Designer UI设计案例教程
Jul 26 Python
python实现会员管理系统
Mar 18 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 array_map使用自定义的函数处理数组中的每个值
2016/10/26 PHP
基于Codeigniter框架实现的student信息系统站点动态发布功能详解
2017/03/23 PHP
jquery.ui.draggable中文文档
2009/11/24 Javascript
面向对象Javascript核心支持代码分享
2012/05/23 Javascript
document.getElementBy("id")与$("#id")有什么区别
2013/09/22 Javascript
浅谈JavaScript字符串与数组
2015/06/03 Javascript
jquery判断输入密码两次是否相等
2020/04/22 Javascript
js随机生成26个大小写字母
2016/02/12 Javascript
浅析在javascript中创建对象的各种模式
2016/05/06 Javascript
jquery实现无刷新验证码的简单实例
2016/05/19 Javascript
浅析angularJS中的ui-router和ng-grid模块
2016/05/20 Javascript
JS实现列表的响应式排版(推荐)
2016/09/01 Javascript
Vue2实时监听表单变化的示例讲解
2018/08/30 Javascript
微信小程序 拍照或从相册选取图片上传代码实例
2019/08/28 Javascript
layui使用button按钮 点击出现弹层 弹层中加载表单的实例
2019/09/04 Javascript
jQuery实现日历效果
2020/09/11 jQuery
[40:04]Secret vs Infamous 2019国际邀请赛淘汰赛 败者组 BO3 第二场 8.23
2019/09/05 DOTA
为Python的web框架编写MVC配置来使其运行的教程
2015/04/30 Python
python采集百度百科的方法
2015/06/05 Python
python使用xlrd与xlwt对excel的读写和格式设定
2017/01/21 Python
python实现八大排序算法(2)
2017/09/14 Python
python3实现字符串操作的实例代码
2019/04/16 Python
django 中QuerySet特性功能详解
2019/07/25 Python
python-序列解包(对可迭代元素的快速取值方法)
2019/08/24 Python
Python使用scipy模块实现一维卷积运算示例
2019/09/05 Python
Python super()方法原理详解
2020/03/31 Python
面向新手解析python Beautiful Soup基本用法
2020/07/11 Python
一篇文章教你用python画动态爱心表白
2020/11/22 Python
浅析几个CSS3常用功能的写法
2014/06/05 HTML / CSS
Clarisonic美国官网:科莱丽声波洁面仪
2017/10/12 全球购物
三年级学生评语大全
2014/12/26 职场文书
庆七一活动简报
2015/07/20 职场文书
暑假生活随笔
2015/08/15 职场文书
一个成功的互联网创业项目,必须满足这些要求
2019/08/23 职场文书
死磕 java同步系列之synchronized解析
2021/06/28 Java/Android
MySQL系列之三 基础篇
2021/07/02 MySQL