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 相关文章推荐
linux系统使用python获取cpu信息脚本分享
Jan 15 Python
举例简单讲解Python中的数据存储模块shelve的用法
Mar 03 Python
Python有序字典简单实现方法示例
Sep 28 Python
Python实现嵌套列表及字典并按某一元素去重复功能示例
Nov 30 Python
Python中xrange与yield的用法实例分析
Dec 26 Python
python2.7实现FTP文件下载功能
Apr 15 Python
利用Python如何实现一个小说网站雏形
Nov 23 Python
Python 动态导入对象,importlib.import_module()的使用方法
Aug 28 Python
Python使用monkey.patch_all()解决协程阻塞问题
Apr 15 Python
python实现npy格式文件转换为txt文件操作
Jul 01 Python
如何通过python计算圆周率PI
Nov 11 Python
用python制作个视频下载器
Feb 01 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
综合图片计数器
2006/10/09 PHP
使用swoole扩展php websocket示例
2014/02/13 PHP
php正则替换处理HTML页面的方法
2015/06/17 PHP
[企业公众号]升级到[企业微信]之后发送消息失败的解决方法
2017/06/30 PHP
php readfile()修改文件上传大小设置
2017/08/11 PHP
php实现的中秋博饼游戏之掷骰子并输出结果功能详解
2017/11/06 PHP
WordPress伪静态规则设置代码实例
2020/12/10 PHP
jQuery制作仿腾讯web qq用户体验桌面
2013/08/20 Javascript
解决bootstrap中modal遇到Esc键无法关闭页面
2015/03/09 Javascript
javascript中in运算符用法分析
2015/04/28 Javascript
在JavaScript中正确引用bind方法的应用
2015/05/11 Javascript
angularjs实现的前端分页控件示例
2017/02/10 Javascript
vue2组件实现懒加载浅析
2017/03/29 Javascript
详解为生产环境编译Angular2应用的方法
2018/12/10 Javascript
Vue项目history模式下微信分享爬坑总结
2019/03/29 Javascript
详解Vue项目引入CreateJS的方法(亲测可用)
2019/05/30 Javascript
koa2+vue实现登陆及登录状态判断
2019/08/15 Javascript
JavaScript实现抖音罗盘时钟
2019/10/11 Javascript
vue.js实现左边导航切换右边内容
2019/10/21 Javascript
基于ant design日期控件使用_仅月份的操作
2020/10/27 Javascript
[05:42]DOTA2英雄梦之声_第10期_蝙蝠骑士
2014/06/21 DOTA
Windows和Linux下使用Python访问SqlServer的方法介绍
2015/03/10 Python
python中利用xml.dom模块解析xml的方法教程
2017/05/24 Python
基于Python3.6+splinter实现自动抢火车票
2018/09/25 Python
python实现整数的二进制循环移位
2019/03/08 Python
使用Python爬虫库BeautifulSoup遍历文档树并对标签进行操作详解
2020/01/25 Python
了解一下python内建模块collections
2020/09/07 Python
Sephora丝芙兰泰国官方网站:国际知名化妆品购物
2017/11/15 全球购物
超市开学活动方案
2014/03/01 职场文书
关于美容院的活动方案
2014/08/14 职场文书
纪检干部现实表现材料
2014/08/21 职场文书
水利局群众路线专题民主生活会发言材料
2014/09/21 职场文书
三严三实·严以律己心得体会
2016/01/13 职场文书
标准版个人借条怎么写?以及什么是借条?
2019/08/28 职场文书
详解Alibaba Java诊断工具Arthas查看Dubbo动态代理类
2022/04/08 Java/Android
Python之matplotlib绘制饼图
2022/04/13 Python